C++迭代器小问题, 显示的错误为: "错误:应输入声明" 请问是何处出错, 该如何修改, 谢谢
vector和string容器支持迭代器的'<'运算;但是我把前两个list改成vector仍然编译错误,显示应输入声明;...
vector 和 string 容器支持迭代器的'<' 运算;
但是我把前两个list 改成vector仍然编译错误, 显示应输入声明; 展开
但是我把前两个list 改成vector仍然编译错误, 显示应输入声明; 展开
展开全部
恩?貌似不能用iter1 < iter2吧?
while(iter1 != iter2)
{
// do something
}
可以参考这个:http://www.cplusplus.com/reference/list/list/begin/
// list::begin
#include <iostream>
#include <list>
int main ()
{
int myints[] = {75,23,65,42,13};
std::list<int> mylist (myints,myints+5);
std::cout << "mylist contains:";
for (std::list<int>::iterator it=mylist.begin(); it != mylist.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
return 0;
}
追问
C++ primer里面说, vector 和 string 容器是支持迭代器的'<' 运算的;
'<' 比较的两个迭代器位置的前后, 只要是在同一个容器中;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询