【发布时间】:2015-05-16 18:25:09
【问题描述】:
类似但相反的东西:
int pos = find(v.begin(), v.end(), item) - v.begin();
【问题讨论】:
-
什么是容器?
-
容器是一个 std::vector
类似但相反的东西:
int pos = find(v.begin(), v.end(), item) - v.begin();
【问题讨论】:
您可以使用std::find,但使用容器提供的反向迭代器:
auto it = std::find(v.rbegin(), v.rend(), item);
int index = v.rend() - it + 1;
您需要+1,因为v.rend()“指向”元素-1,即“过去”第一个元素。
【讨论】:
find(v.rbegin(), v.rend(), item);
【讨论】: