問題タブ [initialization-list]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
49559 参照

c++ - C++でメンバーへの参照をNULLに初期化する

C ++で参照メンバーをNULLに初期化することは可能ですか?
私はこのようなことをしようとしています:

「ReadOnly」をオブジェクトの実際の参照に初期化するとこれを実行できることはわかっていますが、「NULL」をそこに入れたい場合は、次のエラーが発生します。

「'int'から'constObject&'に変換できません

どうすればこれを解決できますか?

0 投票する
1 に答える
3425 参照

c++ - std::array 初期化子リスト 初期化リストでの初期化

私は C++11 の新機能を大いに楽しんでいますが、その微妙な点のいくつかが欠けているように感じることがあります。

int 配列の初期化は正常に機能し、Element2 ベクトルの初期化は正常に機能しますが、Element2 配列の初期化は失敗します。正しい構文はコメントされていない行であるべきだと思いますが、初期化の試みはどれも成功しませんでした。

MinGWの下でg ++ 4.6.1および4.6.2でこれを試しました。

この配列を正しく初期化するにはどうすればよいですか? 出来ますか?

0 投票する
4 に答える
410 参照

c++ - 大きな初期化リストのデメリット?

私の雇用主では、より効率的であるため、コンストラクターで初期化リストを使用することがポリシーです。

ただし、初期化が必要な 45 のデータ メンバーを持つクラスを開発しています。ポリシーに従って、これはコンストラクターの初期化リストで行う必要があります。

読みやすさ以外に、大きな初期化リストの欠点は何ですか?

0 投票する
3 に答える
142 参照

c++ - C++コンストラクターの理解

このコンストラクターについて考えてみましょう。Packet() : bits_(0), datalen_(0), next_(0) {}

bits_、およびは、次のように定義されたクラスPacketのフィールドであることにdatalen_注意next_してください。

コンストラクターのこの部分はどういう意味ですか?bits_(0), datalen_(0), next_(0)

0 投票する
4 に答える
5151 参照

c++ - メンバー変数を使用して、初期化リスト内の他のメンバーを初期化できますか?

次の (簡略化された) 状況を考えてみましょう。

このように Foo をインスタンス化すると:

では、evenA は 0、evenB は 2 ですが、evenSum は 2 に初期化されますか?

現在のプラットフォーム (iOS) でこれを試してみましたが、うまくいくようですが、このコードが移植可能かどうかはわかりません。

ご協力いただきありがとうございます!

0 投票する
2 に答える
1648 参照

c++ - C ++初期化リスト、クラス内のクラス(集約)

私は食器洗い機プログラムを書いています。食器洗い機にはポンプ、モーター、IDがあります。ポンプ、モーター、日付、時刻は、食器洗い機が使用する他の小さなクラスです。デバッガーで確認しましたが、Dishwasherクラスを作成すると、目的の値が初期化されません。私は何か間違ったことをしていると思いますが、何ですか?:(

したがって、食器洗い機のクラスは以下のとおりです。

これは私がクラスを初期化する方法です:

これが私がクラスを作成する方法です:

読みやすくするために未使用のものをいくつか削除したので、さらに詳しく知りたい場合は、完全なコードを次に示します。http: //codepad.org/K4Bocuht

0 投票する
2 に答える
18485 参照

c++ - メンバー関数を使用して、初期化リスト内のメンバー変数を初期化できますか?

OK、メンバー変数を使用して、初期化リスト内の他のメンバー変数を初期化できます (初期化順序などに注意してください)。メンバー関数はどうですか?具体的に言うと、このスニペットは C++ 標準に従って合法ですか?

0 投票する
1 に答える
88 参照

c++ - 内部参照を含むイニシャライザーリスト

オブジェクトの初期化にイニシャライザリストを使用してオブジェクト管理を簡素化したいのですが、問題はオブジェクトが相互に参照し合うことです。

これは標準で許可されていますか?私が理解していることから、クラス内のメンバー宣言がA、次にBであるとすると、初期化リストの順序は重要ではありません。クラス内の物理的な順序によって初期化されるからです。

0 投票する
3 に答える
14387 参照

c++ - デフォルトのコンストラクターのないクラスメンバー

デフォルトのコンストラクターのないクラスA、タイプAのオブジェクトを返すファクトリメソッドfactoryA、およびメンバーとしてAを持つクラスBがあるとします。この場合、BのタイプAのメンバーは、Bのコンストラクター初期化リストで初期化する必要があることを私は知っています。理由は私には完全には明らかではないので、誰かが私にそれを説明できればそれは素晴らしいことです。また、Aのコンストラクターへのパラメーターを、Bのコンストラクター内で計算する必要がある場合、たとえば、データベースまたはその性質のものにクエリを実行する必要がある場合はどうなりますか?Aにデフォルトのコンストラクターを提供せずに以下のセットアップを使用する方法はありますか?前もって感謝します。