c++ 用范型定义一个函数判断数组是否包含某个值
在C++中,可以使用模板和范型编程来定义一个函数来判断数组是否包含某个值。以下是一个使用范型的示例代码:
#include <iostream>
#include <algorithm>
template<typename T, size_t N>
bool containsValue(const T (&arr)[N], const T& value) {
return std::find(arr, arr + N, value) != arr + N;
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int value = 3;
if (containsValue(arr, value)) {
std::cout << "Array contains the value " << value << std::endl;
} else {
std::cout << "Array does not contain the value " << value << std::endl;
}
return 0;
}
在上面的例子中,containsValue函数使用了两个范型参数:T表示数组元素的类型,N表示数组的大小。函数接受一个数组和一个值作为参数,然后使用std::find算法在数组中查找指定的值。如果找到了该值,则返回true,否则返回false。
在main函数中,我们定义了一个整数数组arr和一个整数值value。然后通过调用containsValue函数来判断数组arr是否包含值value,并输出结果。
这个例子可以适用于不同类型的数组,只需将相应的类型和数组大小传递给containsValue函数即可。
原文地址: https://www.cveoy.top/t/topic/i5Xs 著作权归作者所有。请勿转载和采集!