使用特定模板参数捕获 类
Catch classes with specific template argument
是否可以仅捕获具有特定模板参数的 类,即类似这样的内容:
template< typename T >
void foo( T<int> )
{
// do something
}
是的,但是你必须使用 template template
参数
template <template <typename> class T>
void foo( T<int> )
{
// do something
}
你也可以写
template <typename...> class T
拦截接收零个或多个类型参数的类型 T
(例如:拦截接收两个类型的 std::vector
,其中第二个类型具有默认值)。
是否可以仅捕获具有特定模板参数的 类,即类似这样的内容:
template< typename T >
void foo( T<int> )
{
// do something
}
是的,但是你必须使用 template template
参数
template <template <typename> class T>
void foo( T<int> )
{
// do something
}
你也可以写
template <typename...> class T
拦截接收零个或多个类型参数的类型 T
(例如:拦截接收两个类型的 std::vector
,其中第二个类型具有默认值)。