使用std :: find从某个值开始

时间:2017-12-12 16:20:57

标签: c++11

我想做的是从矢量中的某个位置开始一个std :: find向量

handleSubmit

我不能简单地添加' a'在find命令中。我怎样才能达到同样的效果?

1 个答案:

答案 0 :(得分:0)

如果您想在第一次出现后搜索某个值,可以试试这个:

auto it2 = std::find(
    std::next(std::find(std::begin(myvector), std::end(myvector), val)),
    std::end(myvector), val);
}

首先找到第一次出现的值,然后从下一个位置开始再次搜索。

您可以使用std::next() 增加迭代器,如:

it = find(std::next(myvector.begin(), a), myvector.end(), myvector.at(a));