タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

constに関するyasufのブックマーク (2)

  • ヘッダーでstatic、constメンバー変数の初期化 / Tips / Cycle of 5th

    通常ソース(CPP)ファイルでstaticメンバー変数やconstメンバー変数の初期化を行うが、ヘッダーファイル内で初期化したい時がある。そんな時どうするかのTips。 C++で次のように初期化できれば一番いいのだがそれはできない。(private,public記述が面倒なのでclassではなくstructで) struct Test { static string static_member = "hoge"; const string const_member = "hoge"; }; これをコンパイルすると両者に対し次のようなエラーが現れる。 エラー 1 error C2864: 'Test::static_member' : スタティック const 整数データ メンバ以外をクラス内で初期化することはできません また、constの場合には struct Test { const s

  • クラスのメンバ変数をstatic, const, あるいはその両方で宣言する | frog.raindrop.jp.knowledge

    staticメンバ変数 クラスのメンバ変数で、値をオブジェクトごとに持つのではなく、すべてのオブジェクトで同じ変数を参照したい場合は、staticをつけて宣言する。 // sample.h class Sample { public: Sample (); ~Sample (); private: static int _staticVar; }; staticメンバ変数の初期化は、下のように実装ファイルで定義をかく。(処理系によって若干解釈が違うといううわさも) // sample.cpp #include "sample.h" int Sample::_staticVar = 0; // 初期化 constメンバ変数 クラスのメンバ変数の値を、オブジェクト作成後に変更できなくするにはconstをつけて宣言する。 // sample.h class Sample { public: Sa

    yasuf
    yasuf 2009/09/12
    よく迷う
  • 1