【发布时间】:2013-03-10 00:03:44
【问题描述】:
我想测试一个非空向量是否包含相同的元素。这是最好的方法吗?
count(vecSamples.begin()+1, vecSamples.end(), vecSamples.front()) == vecSamples.size()-1;
【问题讨论】:
-
这很简单,当然,但如果它们不同,则效率低下。另外,您可以通过删除 +/- 1 来进一步简化它。特别是因为这会在空向量上爆炸。
-
vecSamples.front()会在空向量上爆炸。 -
在我的情况下,向量永远不会为空。
-
你的向量是否总是至少有 2 个元素?
-
不,有问题吗?
标签: c++