判断std::vector< std::string >中是否含有某个字符串
时间: 2024-09-11 17:12:56 浏览: 48
在C++中,`std::vector<std::string>`是一个可以存储字符串的动态数组。要判断一个`std::vector<std::string>`中是否含有某个特定的字符串,可以遍历这个vector,然后使用`std::string`的`find`方法来查找该字符串。如果找到字符串,`find`方法会返回该字符串在vector中的位置索引(位置索引是从0开始的),如果没有找到,则返回一个特殊值`std::string::npos`。
下面是一个简单的代码示例,展示了如何判断`std::vector<std::string>`中是否含有特定的字符串:
```cpp
#include <iostream>
#include <vector>
#include <string>
bool contains(const std::vector<std::string>& vec, const std::string& target) {
for (const std::string& str : vec) {
if (str == target) {
return true; // 找到了,返回true
}
}
return false; // 没找到,返回false
}
int main() {
std::vector<std::string> vec = {"apple", "banana", "cherry"};
std::string target = "banana";
if (contains(vec, target)) {
std::cout << "Vector contains the string \"" << target << "\"." << std::endl;
} else {
std::cout << "Vector does not contain the string \"" << target << "\"." << std::endl;
}
return 0;
}
```
在这个示例中,`contains`函数会返回`true`,因为vector中确实包含字符串"banana"。
阅读全文