コンストラクター初期化リストを使用して Const 配列メンバーを初期化する
C では、 const 修飾子を持つクラス メンバーは定数とみなされ、後で変更することはできません初期化。これにより、クラス初期化子リストでそのようなメンバーをどのように初期化するかという問題が生じます。次のクラス定義を考えてみましょう。
<code class="cpp">class MyClass { public: const int arr[2]; };</code>
arr は const 宣言されているため、コンストラクター関数本体内で初期化できません。ただし、C 11 では、コンストラクター初期化リストで const メンバーを初期化できる新機能が導入されました。
<code class="cpp">struct MyClass { const int arr[2]; MyClass() : arr{ 2, 3 } { // Other construction logic } };</code>
この例では、arr メンバーはコンストラクター初期化リストの値 {2, 3} で初期化されます。 。これにより、arr.
に異なる定数値を使用して MyClass の複数のインスタンスを作成できるようになります。以上がコンストラクター初期化リストを使用して C で `const` 配列メンバーを初期化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。