C++ 如何限制向量的输入量?

C++ 如何限制向量的输入量?,c++,vector,input,C++,Vector,Input,我使用void FillVector用用户插入的值填充一个向量,并希望将用户插入的量限制为10,如果他们要再插入,则仍然需要前10个。但由于某种原因,除非插入第11个值,否则脚本将无法工作,只有在插入第11个值后,脚本才会处理前10个数字。为什么在用户输入前10个值后按Enter键时,它不执行while命令 #include <iostream> using namespace std; void fillVector(vector<int>& newVecto

我使用void FillVector用用户插入的值填充一个向量,并希望将用户插入的量限制为10,如果他们要再插入,则仍然需要前10个。但由于某种原因,除非插入第11个值,否则脚本将无法工作,只有在插入第11个值后,脚本才会处理前10个数字。为什么在用户输入前10个值后按Enter键时,它不执行while命令

#include <iostream>
using namespace std;

void fillVector(vector<int>& newVectorQuantities)
{
cout << "Please type in your list of 10 numbers separated by a space."
int input;
cin >> input;

while (newVectorQuantities.size() < 10) {
newVectorQuantities.push_back(input);
cin >> input;
}
}
#包括
使用名称空间std;
无效填充向量(向量和新向量数量)
{
cout>输入;
while(newvectorQuantilities.size()<10){
新矢量数量。推回(输入);
cin>>输入;
}
}

它按下第10个按钮,执行
cin>>输入等待该操作完成,然后继续。换句话说,代码按照它的顺序执行。

使用
do,而
循环而不是脚本language@Amit你的评论与此有什么关系question@redFIVE-这一点都不相关-这是对问题内容的评论,特别是:“但由于某种原因,脚本无法工作”.