考慮下面的程序:爲什麼構造函數只被調用一次?
class A
{
public:
A(int i)
{
cout<<"Called"<<endl;
}
};
int main()
{
vector<A> v(5,A(1));
return 0;
}
我得到的輸出:http://ideone.com/81XO6
Called
爲什麼構造函數被調用一次,即使我們正在建設5個對象?
vector
如何在編譯器內部處理?
其他的由複製構造函數初始化。 – jxh 2012-07-22 06:31:25
http://ideone.com/lHX5W – 2012-07-22 06:32:04
@Benjamin Lindley:你應該在回答中寫下 – nico 2012-07-22 06:33:07