ホームページ > バックエンド開発 > C++ > コンストラクター初期化リストを使用して C で `const` 配列メンバーを初期化する方法

コンストラクター初期化リストを使用して C で `const` 配列メンバーを初期化する方法

Barbara Streisand
リリース: 2024-11-03 17:26:03
オリジナル
572 人が閲覧しました

How to Initialize `const` Array Members in C   Using Constructor Initialization Lists?

コンストラクター初期化リストを使用して 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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート