读书人

C++程序出了点有关问题大哥们看看

发布时间: 2012-03-11 18:15:39 作者: rapoo

C++程序出了点问题,大哥们看看
# include<iostream>
# include<vector>
# include<list>
using namespace std;
bool v_l(vector<int>&,list<int>&);
int main()
{
int i;
vector<int> ivec;
while(cin>>i)
ivec.push_back(i);
list<int> ilist;
while(cin>>i)
ilist.push_back(i);
cout<<v_l(ivec,ilist)<<endl;
return 0;

}

bool v_l(vector<int> &ivec,list<int> &ilist)
{
vector<int> ivec1(ilist.begin(),ilist.end());
if(ivec==ivec1)
return true;
else
return false;
}
这个程序编译就出了点问题,大侠们看看!
错误指向vector<int> ivec1(ilist.begin(),ilist.end());


[解决办法]
vector<int> ivec1(ilist.begin(),ilist.end());这里面ilist.begin()和ilist.end()是list<int>::iterator类型的,而不是vector<int>::iterator类型的,类型不匹配
[解决办法]
我将你那程序原封不动的拷贝到vs2008里面编译,没有错误
[解决办法]

探讨
我的程序是比较2个容器内的元素是不是一样!(ivec,ilist)
我用的是VC6.0,编译时不行呀!
奇怪、、、、

读书人网 >C++

热点推荐