タグ付けされた質問 「static-members」

17
C ++でプライベート静的メンバーを初期化する方法は?
C ++でプライベートな静的データメンバーを初期化する最良の方法は何ですか?ヘッダーファイルでこれを試しましたが、奇妙なリンカーエラーが発生します。 class foo { private: static int i; }; int foo::i = 0; これは、クラスの外部からプライベートメンバーを初期化できないためだと思います。これを行うための最良の方法は何ですか?

9
静的変数を初期化する方法
私はこのコードを持っています: private static $dates = array( 'start' => mktime( 0, 0, 0, 7, 30, 2009), // Start date 'end' => mktime( 0, 0, 0, 8, 2, 2009), // End date 'close' => mktime(23, 59, 59, 7, 20, 2009), // Date when registration closes 'early' => mktime( 0, 0, 0, 3, …

6
静的constexpr char []への未定義の参照
static const charクラスに配列が必要です。GCCは不平を言って、私はを使用するべきだと私に言ったconstexprが、今は未定義の参照であることを私に言っている。配列を非メンバーにすると、コンパイルされます。何が起こっている? // .hpp struct foo { void bar(); static constexpr char baz[] = "quz"; }; // .cpp void foo::bar() { std::string str(baz); // undefined reference to baz }


1
静的メンバー関数エラー。署名を適切に書き込む方法は?
現在の署名を使用してg ++でコードをコンパイルしようとすると、エラーが発生します。 cannot declare member function static void Foo::Bar(std::ostream&, const Foo::Node*) to have static linkage 私の質問は2つあります。 なぜこの方法でコンパイルしないのですか? 正しいシグネチャは何ですか?なぜですか? C ++を使用しているとき、署名は常に私を死に至らせてきました 編集:これもクラスヘッダーファイルです。 class Foo { public: Foo(); ~Foo(); bool insert(const Foo2 &v); Foo * find(const Foo2 &v); const Foo * find(const Foo2 &v) const; void output(ostream &s) const; private: //Foo(const Foo …

7
エラーメッセージ厳密な標準:非静的メソッドはPHPで静的に呼び出すべきではありません
次のphpを持っています。しかし、index.phpを表示すると、次のエラーメッセージが表示されます。 厳密な標準:非静的メソッドPage :: getInstanceByName()は、12行目の/var/www/webworks/index.phpで静的に呼び出すべきではありません 私は誰かが問題を修正する方法を教えてくれることを願っています。 index.php // { common variables and functions include_once('ww.incs/common.php'); $page=isset($_REQUEST['page'])?$_REQUEST['page']:''; $id=isset($_REQUEST['id'])?(int)$_REQUEST['id']:0; ... // { get current page id if(!$id){ if($page){ // load by name $r=Page::getInstanceByName($page); if($r && isset($r->id))$id=$r->id; } if(!$id){ // else load by special $special=1; if(!$page){ $r=Page::getInstanceBySpecial($special); if($r && isset($r->id))$id=$r->id; } } } // { …

4
Android静的オブジェクトのライフサイクル
私はイベント検索アプリケーションを作成しています。ある画面から検索条件を設定し、別の画面に入力してから、ユーザーは3番目の画面から検索条件を編集して4番目の画面に移動します。 上記のタスクを達成するために、アプリケーション周辺の値を記憶する静的オブジェクトを使用しており、特別なことをする必要はありません。 しかし、メモリ不足のアンドロイドが静的オブジェクトを削除した場合、アンドロイドの静的オブジェクトのライフサイクルについて心配ですか? androidはマルチタスクをサポートしているため、ユーザーが別のアプリケーションに切り替えて、ユーザーがアプリケーションに戻ったときに動作がおかしくなり、静的オブジェクトがマルチタスクで削除されますか??? 何か案が ??また、シングルトンメソッドを介して静的オブジェクトを保持することをお勧めしますか?

6
静的クラス、インターフェイス、またはXMLリソースのいずれかでAndroidの定数を定義する最良の方法はどれですか?
Webサービスを使用してサーバーからデータを取得するAndroidアプリケーションを開発しています。そのため、開発システム、テストサーバー、およびライブサーバーをポイントするための3つの異なるURLセットを使用しています。テスト/ライブ用のアプリケーションを提供したいときはいつでも、URLを変更することは困難です。それで、私はそれを構成可能にすることを計画しました。それにより、アプリケーションは、ビルドタイプ構成定数に基づいて適切なURLを取得できます。そう、 この定数、Java静的クラス、Javaパブリックインターフェース、またはXMLリソースファイルを保持する最良の方法はどれですか。いつ?どうして? どちらがより良いパフォーマンスを提供しますか?、いつ?どうして? 例:xmlリソース <integer name="config_build_type">0</integer> <string-array name="url_authentication"> <item >http://development.com/xxxx</item> <item >http://test.com/xxx</item> <item >http://example.com/xxx</item> </string-array> Java静的定数 public class Config { public static final int BUILD_TYPE = 0; // 0 - development, 1 - test, 2 - live public static final String[] URL_AUTHENTICATION = {"http://development.com/", "http://test.com/", "http://example.com"}; }

6
静的フィールドはガベージコレクションのために開いていますか?
プログラムのセットアップでのみ使用される架空のユーティリティクラスがあるとします。 class MyUtils { private static MyObject myObject = new MyObject(); /*package*/static boolean doStuff(Params... params) { // do stuff with myObject and params... } } myObjectは、使用されなくなったときにガベージコレクションされますか、それともプログラムの存続期間中存続しますか?

9
Javaが内部クラスの静的フィールドを禁止するのはなぜですか?
class OuterClass { class InnerClass { static int i = 100; // compile error static void f() { } // compile error } } で静的フィールドにアクセスすることはできませんが、静的でOuterClass.InnerClass.iある必要があるもの、たとえば作成されたInnerClassオブジェクトの数を記録する場合は、そのフィールドを静的にすることが役立ちます。では、なぜJavaは内部クラスの静的フィールド/メソッドを禁止しているのでしょうか。 編集:静的なネストされたクラス(または静的な内部クラス)でコンパイラーを満足させる方法を知っていますが、Javaが言語設計と内部クラス(または通常の内部クラス)内の静的フィールド/メソッドを禁止している理由です誰かがそれについてもっと知っているなら、実装の側面。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.