問題タブ [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 投票する
2 に答える
727 参照

c++ - C++ 初期化リストは、親クラスのコンストラクターの呼び出しを無視します

次のコードでは、C クラスの構築は、A、B1、B2、最後に C クラスの初期化から始まります。ただし、B1 と B2 を初期化するとき、デバッガーは A(1) と A(2) の初期化 (B1 と B2 の初期化リストにこの順序で表示される) を無視しましたが、B2(3) の初期化は無視しませんでした。 C初期化リストで。

Why is that?

Thanks in advance.

Here is the code:

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

c - 定義時に構造を初​​期化する方法は?

デフォルトの初期化値で構造体を宣言する方法はありますか?

次のような構造体を定義するヘッダー ファイルがあります。

しかし、これはもちろんうまくいきません。

struc_tこのヘッダー ファイルでvar 型を宣言する方法でも構いません。しかし、私が正しく覚えているように。次のようにcファイルでdecarereする必要がありますextern

私がやりたいことは、このヘッダーが含まれているすべての場所で実行できるようにすることvar = struc_s.dmgであり、その結果、var が値を保持する必要があります100。しかし、ヘッダー以外の場所で struc_s を宣言したくありません。この動作をアーカイブする方法はありますか?

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

c++ - C++ 配列の初期化に関する Doxygen の問題

現在のプロジェクトの API を生成するために Doxygen を使用していますが、奇妙な動作に遭遇しました。基本的に、初期化リストを使用してクラスのコンストラクターでメンバー配列を設定すると、Doxygen は適切な出力を生成しません。

簡単なテストクラスを次に示します。

コンストラクターのバージョン 1 を使用してファイルに対して doxygen を実行すると、コンストラクターのドキュメントがなく、変数 v について言及されていないクラスの比較的空の HTML ファイルが得られます。バージョン 1 をコメントアウトしてバージョン 2 を使用すると、Doxygen は適切に生成されます。クラスのドキュメント。

このタイプの配列設定が C++11 の新機能であることは知っていますが、それは初期化ですか、それとも初期化リストで行われるという事実ですか? この動作の原因を誰かが知っている場合は、コード全体でこれらのタイプの初期化子を使用しているため、感謝します。必要に応じて変更を一掃することは避けたいと思います。

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

c++ - どの時点で、コンストラクターで呼び出される基本クラスのコンストラクター

派生クラスのコンストラクターの呼び出しで基底クラスのコンストラクターがいつ呼び出されるかを知る必要があります。

コマンドDerived Child;でコンストラクターDerivedが呼び出されますが、Derivedクラスコンストラクターが実行される前に、すべての基本コンストラクター、つまり Base1 と Base2 のコンストラクターが実行されることを読みました。

Derivedクラスのコンストラクタがこのように見える場合、イベントの順序はどうなるのだろうと思っています

Base2コンストラクターの初期化リストで現在呼び出されているクラスのコンストラクターですか、それともDerived以前に呼び出されていますか。Derivedさらに、コンストラクターの呼び出しの開始時、またはクラス コンストラクターの初期化リストの開始時に呼び出されるすべての基底クラス コンストラクターDerivedです。

あいさつ

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

c++ - 初期化子リスト内のクラス constexpr 式

次のコードは、g++ 4.8.2 とのリンクに失敗します。

次のエラーが表示されます。

マップをコメントアウトすると、問題なくリンクします。これはコンパイラのバグですか、それとも標準に欠けている特殊なケースですか?

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

c++ - コンストラクタへの初期化リスト

私は、初期化リストを引数として取る独自の List クラスのコンストラクターを作成することになっている学校での課題に取り組んでいます。

これは私ができるようにしたいことです:

これは私がこれまでに持っているものです:

私の謙虚な意見では、これはうまくいくはずです。ただし、初期化 ( List list {1,2,3};) を試みると、seg-fault が発生します。誰かが私がここで間違っていることを説明してもらえますか?