对于谷歌和stackoverflow搜索无法帮助我我别无选择,只能问你们帮忙。向量数组C++ - 向添加元素添加元素时的好奇行为
我想使用一个向量数组 - 我知道这个数组只包含两个向量。因此
vector<double> testVect[1];
现在,当我想要的元素添加到阵列中包含我使用的第一个矢量
testVect[0].push_back(0);
到目前为止,一切似乎确定 - 不幸的是添加元素的第一个向量在某种程度上也增加了同样的元素(在这种情况下是0)也是第二个向量。
有人能告诉我这种行为的原因吗? (请) - 也许是一种解决方法。 目前我有使用Visual Studio 6(雇主将不会安装新的编译器 - 我已经激怒了我的同事:d
'vector testVect [1];'只做一个向量。它是一个向量的数组,最大索引为'0'。是什么让你觉得还有第二个元素,或者它也会受到push_back的影响? –
我混淆了初始化一个向量并访问它的元素。在C++中,开始用0计算向量元素。因此,如果一个向量包含2个元素,您将通过向量[0]访问第一个元素。这就是为什么我认为写testVect [1]会产生两个向量的数组。谢谢:) –
再次被低估 - 这一次没有明显的原因...有时候人们会感到困惑。 –