【发布时间】:2012-10-11 00:09:23
【问题描述】:
我想知道如何找到验证某个条件(例如大于)的元素的索引位置。例如,如果我有一个 int 值向量
vector<int> V;
V 包含值3 2 5 8 2 1 10 4 7
我想获取大于 5 的元素的所有 索引位置。
我知道std::find_if,但根据文档,它只是找到满足条件的第一个元素。
【问题讨论】:
-
您可以在循环中使用
std::find_if,随时存储位置。 -
反复使用它,不是从头开始,而是从你刚刚找到的地方开始。
-
@oldrinb 实际上我需要获取位置,因为我必须从另一个向量中的相同位置获取元素。
-
@tuxworker,所以你想要索引位置,而不是迭代器?
-
@chris 是的,我想要索引位置