是否可以在 C++ 中为模板函数的变量定义默认值?
Is it possible to define the default value for variables of a template function in C++?
类似于以下内容:
template<class T> T sum(T a, T b, T c=????)
{
return a + b + c;
}
试试这个:
template<class T> T sum(T a, T b, T c=T())
{
return a + b + c;
}
如果您期望整数类型并希望默认值为 5,您也可以输入 T(5).
You can also put in T(5) if you are expecting an integral type and want the default value to be 5.
这篇关于C++ 模板函数默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
为什么两个函数的地址相同?Why do two functions have the same address?(为什么两个函数的地址相同?)
为什么 std::function 的初始化程序必须是可复制构Why the initializer of std::function has to be CopyConstructible?(为什么 std::function 的初始化程序必须是可复制构造的?)
混合模板与多态性mixing templates with polymorphism(混合模板与多态性)
我什么时候应该使用关键字“typename"?使用模When should I use the keyword quot;typenamequot; when using templates(我什么时候应该使用关键字“typename?使用模板时)
依赖名称解析命名空间 std/标准库Dependent name resolution amp; namespace std / Standard Library(依赖名称解析命名空间 std/标准库)
gcc 可以编译可变参数模板,而 clang 不能gcc can compile a variadic template while clang cannot(gcc 可以编译可变参数模板,而 clang 不能)