P45*_*ent 2 c++ templates c++11
假设我有班级
template<
typename T1, /*this is probably an integral type*/
T1 Default /*this is a typical value of that integral type*/
> class Foo {};
Run Code Online (Sandbox Code Playgroud)
而这对于一个给定的实例T1和Default,说foo.
我可以decltype(foo)用来获得完整的类型.
我可以使用一些语法来获取值Default吗?
只是typedef在课堂上使用.
template<
typename T1,
typename T2
> class Foo
{
public:
typedef T1 type1;
typedef T2 type2;
};
Run Code Online (Sandbox Code Playgroud)
要获得默认值,您可以使用实际相同的语法.
template<
typename T1,
T1 Default
> class Foo
{
public:
typedef T1 type1;
static constexpr const T1 default_value = Default;
};
Run Code Online (Sandbox Code Playgroud)