0
我正在學習自己的C++。要了解一個Vector是如何工作的,我寫了下面的有些奇怪的代碼:引用同一對象的向量
Schuif是一個用戶定義的類,ArSize的值是10
============= =========
Schuif schuif;
Schuif &TempSchuif = schuif;
for(size_t i=0; i<ArSize; ++i)
{
cout << "vector size = " << SchuifVector.size() << endl;
cout << "vector capacity = " << SchuifVector.capacity() << endl;
SchuifVector.push_back(TempSchuif);
}
有了這個代碼我期望具有10個元素,其中的所有元素包含到相同schuif對象的引用的載體來結束。
但是,當我編譯這段代碼時,我有一個帶有10個不同對象schuif的向量。
這讓我想到什麼是真正的矢量容器的push_back函數?它接合的原因是它沒有添加對矢量的引用,而是製作了schuif的副本並將該引用放入矢量中。
這是正確的嗎?
謝謝Larsmans, – Vic1