【发布时间】:2011-09-09 00:50:32
【问题描述】:
有没有办法比较两个向量?
if (vector1 == vector2)
DoSomething();
注意:目前,这些向量未排序且包含整数值。
【问题讨论】:
-
您的意思是要比较不考虑向量中元素的顺序?否则,上面的代码应该可以工作。
-
一个简单的方法来比较您是否有两个要检查的未排序数组是否包含完全相同的值,是对它们进行排序,然后使用任何一个标准库方法进行比较。
-
要是这么简单就好了。 VS2013 使用
std::equals来实现==,然后在运行时断言,因为迭代器不是来自同一个容器(!)您必须在所有使用的项目上设置_ITERATOR_DEBUG_LEVEL=1(或=0),或者可能会使用,==。啊!! -
cplusplus.com/reference/vector/vector/operators
vector支持==和<类型比较