Const データ メンバーの初期化
クラス定義内で const データ メンバーを初期化しようとすると、次のようなエラー メッセージが表示される場合があります。このような初期化は禁止されています。このエラーは、名前が示すように、const 変数は定数であり、初期化すると変更できないために発生します。
const データ メンバーを初期化するには、クラス内で宣言し、クラスの外で定義する必要があります。このアプローチにより、クラスのインスタンスが作成される前に定義が確実に行われます。
class T1 { const int t; public: T1() : t(100) { cout << "T1 constructor: " << t << endl; } };
クラス定義では、値を割り当てずに const データ メンバー t を宣言します。実際の初期化は、コンストラクターの初期化リストで行われ、コンストラクター本体の前に実行されます。
このメソッドを使用すると、プログラムの実行中に const 変数を変更できないという原則を守りながら、const データ メンバーを初期化できます。宣言と定義を分離することで、コンパイル時に t 変数に定数値が割り当てられ、後で変更できないことが保証されます。
以上がC で Const データ メンバーを初期化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。