連續輸入兩個vector對象時,應在兩次輸入之間插入cin.clear)語句以對輸入緩沖區進行清空
例如下面程序:
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> ivec1,ivec2;
int n;
while(cin>>n)
ivec1.push_back(n);
cin.clear(); //關鍵語句
int m;
while(cin>>m)
ivec2.push_back(m);
bool flag=false;
for(vector<int>::iterator iter1=ivec1.begin(),iter2=ivec2.begin();
iter1!=ivec1.end()&&iter2!=ivec2.end();++iter1,++iter2){
if(*iter1!=*iter2){
flag=true;
break;
}
}
if(flag)
cout<<"no"<<endl;
else
cout<<"yes"<<endl;
return 0;
}本文出自 “菜鳥的進階之路” 博客,請務必保留此出處http://beyond316.blog.51cto.com/7367775/1272485