用c++设计实现一个函数模板,实现任意数据类型的查找,用c++写出相应的代码,请看好我的关键词
时间: 2024-03-01 14:55:28 浏览: 73
好的,我明白您的关键词是“函数模板”和“任意数据类型的查找”。以下是一个使用函数模板来实现任意数据类型查找的示例代码:
```cpp
#include <iostream>
#include <vector>
template<typename T>
bool search(std::vector<T> vec, T val)
{
for(auto it = vec.begin(); it != vec.end(); ++it)
{
if(*it == val)
{
return true;
}
}
return false;
}
int main()
{
std::vector<int> intVec = {1, 2, 3, 4, 5};
std::vector<double> doubleVec = {1.23, 4.56, 7.89};
std::vector<std::string> strVec = {"apple", "banana", "cherry"};
int intVal = 3;
double doubleVal = 4.56;
std::string strVal = "banana";
std::cout << search(intVec, intVal) << std::endl;
std::cout << search(doubleVec, doubleVal) << std::endl;
std::cout << search(strVec, strVal) << std::endl;
return 0;
}
```
在这个示例中,我们定义了一个search函数模板,它接受一个vector和一个值作为参数,并返回一个bool值,表示值是否在vector中被找到。
在main函数中,我们创建了三个不同类型的vector,并使用search函数来查找其中的值。由于search是一个模板函数,它能够支持任何类型的vector和任何类型的值。
在search函数的实现中,我们使用了迭代器遍历vector,并在找到匹配的值时返回true。如果遍历完整个vector后仍未找到匹配的值,则返回false。
希望这个示例能够帮到您!
阅读全文