std::find的用法
时间: 2023-12-15 22:03:27 浏览: 113
std::find是C++ STL中的一个算法函数,用于在容器中查找特定值。它的语法如下:
```c++
std::find(container.begin(), container.end(), value);
```
其中,container是容器,begin()和end()是容器的迭代器,value是要查找的值。如果查找成功,返回指向该值的迭代器;否则返回end()迭代器。
以下是两个使用std::find的例子:
1.在MyArray中查找值
```c++
MyArray<uint32_t, 12> o{};
for(auto &a: o){
a = 1;
}
auto result = std::find(o.begin(), o.end(), 3);
if(result == o.end()){
std::cout<<"没找到"<<std::endl;
}
else{
std::cout<<*result<<std::endl;
}
o[3] = 8;
result = std::find(o.begin(), o.end(), 8);
if(result == o.end()){
std::cout<<"没找到"<<std::endl;
}
else{
std::cout<<*result<<std::endl;
}
```
2.在vector中查找值
```c++
int searchValue = 42;
vector<int>::const_iterator result = find(vec.begin(), vec.end(), searchValue);
if(result == vec.end()){
cout<<"没找到"<<endl;
}
else{
doSth(*result);}
```
阅读全文