Jac*_*ack 1 c++ templates c++03
我是C++的新手,我很难理解这段代码:
template <typename T = unsigned>
Run Code Online (Sandbox Code Playgroud)
T = unsigned意思?unsigned对给定类型强制执行?那是一个默认的模板参数; 它类似于默认的函数参数.如果你没有输入参数,它将默认为unsigned [int].想象一下:
template <typename T = unsigned>
struct foo
{
T one;
T two;
};
Run Code Online (Sandbox Code Playgroud)
如果我声明例如a foo<char>,结果结构将有两个char成员.但是默认参数允许我声明一个foo<>,并且该结构将有两个unsigned int成员,因为unsigned int它是默认值.
| 归档时间: |
|
| 查看次数: |
90 次 |
| 最近记录: |