在 c++++ 函数模板中,使用 = defaultvalue 语法即可设定默认模板参数,当未指定具体参数值时将使用默认值。例如,templatevoid foo(t arr[]) 中,size 参数的默认值为 100。

C++ 函数模板中默认模板参数的设定方法
在 C++ 中,函数模板可以具有默认模板参数,当在实例化模板时未指定具体参数值时,这些默认值将被使用。这允许创建具有通用功能的灵活模板。
设定默认模板参数的语法
在函数模板声明中,使用 = defaultvalue 语法指定默认模板参数:
template<typename T, int Size = 100>
void foo(T arr[]) {
// 操作数组 arr,最大长度为 Size
} 上述模板中,Size 参数的默认值设置为 100。
实战案例
考虑一个 printArray() 模板函数,用于打印数组中的元素:
#include <iostream>
template<typename T, int Size = 10>
void printArray(T arr[]) {
for (int i = 0; i < Size; i++) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
printArray(arr); // 使用默认参数 Size = 10
double arr2[] = {1.2, 2.3, 3.4};
printArray(arr2, 3); // 指定 Size 为 3
return 0;
} 在这个例子中:
- printArray(arr) 隐式使用默认参数 Size = 10。
- printArray(arr2, 3) 显式指定 Size = 3。
输出:
1 2 3 4 5 1.2 2.3 3.4
以上就是C++ 函数模板中默认模板参数的设定方法?的详细内容,更多请关注知识资源分享宝库其它相关文章!







发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。