は、以下のプログラムを考えてみましょうhttp://ideone.com/81XO6なぜコンストラクタは一度だけ呼び出されますか?私は出力を取得しています</p> <pre><code>class A { public: A(int i) { cout<<"Called"<<endl; } }; int main() { vector<A> v(5,A(1)); return 0; } </code></pre> <p>:
Called
なぜコンストラクタは、我々は5つのオブジェクトを構築している場合でも、一度だけ呼び出されますか?
vector
はコンパイラによってどのように内部処理されていますか?
その他はコピーコンストラクタによって初期化されます。 – jxh
http://ideone.com/lHX5W –
@Benjamin Lindley:あなたは答えにそれを書いてください – nico