Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/155.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 我可以使用'<';而不是'=';在容器上迭代时?_C++_Stl - Fatal编程技术网

C++ 我可以使用'<';而不是'=';在容器上迭代时?

C++ 我可以使用'<';而不是'=';在容器上迭代时?,c++,stl,C++,Stl,我可以使用吗?这很有效,但仅适用于随机访问迭代器(或定义运算符的任何其他迭代器不,你不能使用它,只需使用iter!=vec.end()简短的回答是:不。你的问题是关于“容器”,而不是特定类型的容器,因此对于一般容器,答案肯定是“不”。你为什么要这样做?使用iter!=vec.end()当然可以!它在大多数情况下都不起作用。说真的,它会起作用(在某些实现上)对于vector和string,以及其他标准容器,它只适用于它们,因为它们需要以传染性方式存储元素。请改用iter!=vet.end()。 v

我可以使用
吗?这很有效,但仅适用于随机访问迭代器(或定义
运算符的任何其他迭代器不,你不能使用它,只需使用iter!=vec.end()

简短的回答是:不。你的问题是关于“容器”,而不是特定类型的容器,因此对于一般容器,答案肯定是“不”。你为什么要这样做?使用iter!=vec.end()当然可以!它在大多数情况下都不起作用。说真的,它会起作用(在某些实现上)对于
vector
string
,以及其他标准容器,它只适用于它们,因为它们需要以传染性方式存储元素。请改用
iter!=vet.end()
vector<int>::const_iterator iter;
for (iter = vec.begin(); iter < vec.end; ++iter)
      do_something