vector find使用
时间: 2024-04-28 22:24:45 浏览: 157
`vector` 是 C++ 标准库中的容器,其中包含了很多有用的成员函数,其中之一就是 `find` 函数。它可以用于在 `vector` 中查找指定元素,并返回一个指向该元素的迭代器。
`find` 函数有两个重载版本:
1. `iterator find (const T& val)`:在 `vector` 中查找与 `val` 相等的元素,并返回指向该元素的迭代器。如果未找到,则返回指向 `vector` 结尾的迭代器(即 `vector.end()`)。
示例代码:
```cpp
std::vector<int> vec = {1, 2, 3, 4, 5};
auto it = std::find(vec.begin(), vec.end(), 3);
if (it != vec.end()) {
std::cout << "Element found at index: " << std::distance(vec.begin(), it) << std::endl;
} else {
std::cout << "Element not found" << std::endl;
}
```
输出:
```
Element found at index: 2
```
2. `iterator find (iterator first, iterator last, const T& val)`:在指定范围内查找与 `val` 相等的元素,并返回指向该元素的迭代器。如果未找到,则返回指向范围末尾的迭代器(即 `last`)。
示例代码:
```cpp
std::vector<int> vec = {1, 2, 3, 4, 5};
auto it = std::find(vec.begin() + 2, vec.end(), 3);
阅读全文