我想检查一个模板的类型是否从我的项目中的基类继承.
它应该像以下示例一样工作:
template< class T : public CBaseClass >
>使用模板可以做到这一点,如果没有,我还能做什么?
解决方法
您可以使用Boost的boost :: is_base_and_derived与BOOST_STATIC_ASSERT结合使用.如果您使用的是具有TR1或C 0x支持的编译器,则标准库(
std::is_base_of和C 0x.0中的
static_assert语句)中的构造等同于.