新人求罩:for循环中getline函数
今天看victor模板、想通过for循环赋值时出现一个问题。为什么只有第一次循环、输入流字符存储到了string对象中,而余下的循环虽然进入到getline函数中、为什么不可以输入字符串?鄙人菜鸟中的菜鸟、诚求大神解释。
#include <iostream>
#include <string>
#include <vector>
const int NUM=5;
int main()
{
using std::vector;
using std::string;
using std::cin;
using std::cout;
using std::endl;
vector<int> rating(NUM);
vector<string> titles(NUM);
for(int i=0;i<NUM;i++)
{
cout<<"enter titles #"<<i+1<<":";
getline(cin,titles[i]);
cout<<"enter your rating[i]"<<endl;
cin>>rating[i];
//cin.get();
}
cout<<"thank you"<<endl;
for(int i=0;i<NUM;i++)
{
cout<<rating[i]<<"\t"<<titles[i]<<endl;
}
return 0;
} vector
[解决办法]
//cin.get();