問題タブ [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.
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:
c - 定義時に構造を初期化する方法は?
デフォルトの初期化値で構造体を宣言する方法はありますか?
次のような構造体を定義するヘッダー ファイルがあります。
しかし、これはもちろんうまくいきません。
struc_t
このヘッダー ファイルでvar 型を宣言する方法でも構いません。しかし、私が正しく覚えているように。次のようにcファイルでdecarereする必要がありますextern
私がやりたいことは、このヘッダーが含まれているすべての場所で実行できるようにすることvar = struc_s.dmg
であり、その結果、var が値を保持する必要があります100
。しかし、ヘッダー以外の場所で struc_s を宣言したくありません。この動作をアーカイブする方法はありますか?
c++ - C++ 配列の初期化に関する Doxygen の問題
現在のプロジェクトの API を生成するために Doxygen を使用していますが、奇妙な動作に遭遇しました。基本的に、初期化リストを使用してクラスのコンストラクターでメンバー配列を設定すると、Doxygen は適切な出力を生成しません。
簡単なテストクラスを次に示します。
コンストラクターのバージョン 1 を使用してファイルに対して doxygen を実行すると、コンストラクターのドキュメントがなく、変数 v について言及されていないクラスの比較的空の HTML ファイルが得られます。バージョン 1 をコメントアウトしてバージョン 2 を使用すると、Doxygen は適切に生成されます。クラスのドキュメント。
このタイプの配列設定が C++11 の新機能であることは知っていますが、それは初期化ですか、それとも初期化リストで行われるという事実ですか? この動作の原因を誰かが知っている場合は、コード全体でこれらのタイプの初期化子を使用しているため、感謝します。必要に応じて変更を一掃することは避けたいと思います。
c++ - どの時点で、コンストラクターで呼び出される基本クラスのコンストラクター
派生クラスのコンストラクターの呼び出しで基底クラスのコンストラクターがいつ呼び出されるかを知る必要があります。
コマンドDerived Child;
でコンストラクターDerived
が呼び出されますが、Derived
クラスコンストラクターが実行される前に、すべての基本コンストラクター、つまり Base1 と Base2 のコンストラクターが実行されることを読みました。
Derived
クラスのコンストラクタがこのように見える場合、イベントの順序はどうなるのだろうと思っています
Base2
コンストラクターの初期化リストで現在呼び出されているクラスのコンストラクターですか、それともDerived
以前に呼び出されていますか。Derived
さらに、コンストラクターの呼び出しの開始時、またはクラス コンストラクターの初期化リストの開始時に呼び出されるすべての基底クラス コンストラクターDerived
です。
あいさつ
c++ - 初期化子リスト内のクラス constexpr 式
次のコードは、g++ 4.8.2 とのリンクに失敗します。
次のエラーが表示されます。
マップをコメントアウトすると、問題なくリンクします。これはコンパイラのバグですか、それとも標準に欠けている特殊なケースですか?
c++ - コンストラクタへの初期化リスト
私は、初期化リストを引数として取る独自の List クラスのコンストラクターを作成することになっている学校での課題に取り組んでいます。
これは私ができるようにしたいことです:
これは私がこれまでに持っているものです:
私の謙虚な意見では、これはうまくいくはずです。ただし、初期化 ( List list {1,2,3};
) を試みると、seg-fault が発生します。誰かが私がここで間違っていることを説明してもらえますか?