我的类中有一个模板成员,我想知道该成员的类是否继承自特定类。
class BaseClass;
template <typename T>
class MyClass
{
T* my_member;
public:
void function()
{
BaseClass * base = dynamic_cast<BaseClass*>(my_member)
if(base != 0)
{
// DO SOMETHING
}
else
{
// DO SOMETHING ELSE
}
}
};
我知道如果类不是多态的,dynamic_cast 不会编译,my_member
但我无法控制模板类它可以是多态类型或不是多态类型(我正在编写一个库,我的用户可以使用他们想要的任何类)。
没有人知道以编译 T 是否为多态的方式来实现这一点吗?感谢您的任何想法