c++ - 检查模板参数

标签 c++ function templates

我有一个模板类 (A)。如何检查类 T 是否派生自抽象类 IClass?

template <class T>
class A 
{
       //T have to be derived from abstract class IClass
} ;

谢谢

最佳答案

使用来自 Boost、TR1 或 C++11 的静态断言和 is_base_of:

template <class T>
class A {
public:
    BOOST_STATIC_ASSERT(( boost::is_base_of<IClass, T>::value )); 
};

关于c++ - 检查模板参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8794695/

相关文章:

php - WooCommerce 结帐中的附加自定义下单按钮

c++ - 返回 2d vector 中索引 i、j 的所有组合,总和为所需值

c++ - 使用 Swig 从 Go 中使用 C++ 类

c - C中的宏和函数有什么区别?

c++ - 静态多态和模板容器

javascript - 不同状态的 mustache 模板

c++ - 如何用 C++ 或 C 创建和编写索引 png 图像

c++ - 无法在 OS/X 中找到 C++ 标准库的位置?

function - Julia 模块调用用户定义函数

c - 两个.c文件和一个.h文件,未定义的函数引用,c编程