我是std::vector
类的新手,正在探索根据用户请求将元素插入到向量中的方法。我尝试了一个循环,使用push_back()
成员函数在vector中插入10个元素,但如果我从0开始索引,我的vector只存储9个元素。
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int> v1;
for(int i = 0; i < 10; i++)
{
cin >> i;
v1.push_back(i);
}
}
我使用的是Visual Studio,我只能将九个元素插入到我的矢量中。有什么问题吗?
1条答案
按热度按时间aemubtdh1#
您正在循环中替换循环变量
i
,这意味着您可能无法获得十次迭代。如果用户输入10
,您将只获得一次迭代。要解决这个问题,您必须使用一个单独的变量来阅读用户输入:
推荐阅读Why is "using namespace std;" considered bad practice?