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