如何检查模板类型是否属于另一种模板类型?

时间:2016-04-15 09:33:51

标签: c++ templates c++14

假设我有一个带有int参数的模板类:

template <int Param>
class myclass
{
    // ...
}

我想要实现一个从参数化到另一个参数化的转换函数:

template <int Param, class T>
myclass<Param> myclass_cast(const T& other)
{
    // ... some logic
}

如何静态确定T是模板类myclass<N>? (我可以使用C ++ 14)。

1 个答案:

答案 0 :(得分:5)

您可以推断出您传递的T专精的参数,而不是myclass的模板参数:

template <int Param, int Other>
myclass<Param> myclass_cast (const myclass<Other>& other)
{

}