有没有办法知道类是否已在C ++中继承

时间:2013-12-19 10:47:38

标签: c++ inheritance multiple-inheritance multiple-instances

在C ++中,是否有任何方法/程序可以知道特定类是否已被其他类继承?

是否可以在C ++中使用

1 个答案:

答案 0 :(得分:3)

例如,假设您有以下两个类:

class A {};

class B : public A {};

如果你问是否有办法知道A是否已被遗传,那么就没有这种方法。

如果你问是否有办法知道B是否从另一个类继承(无论它是什么类),那么就没有了。

你可以得到的最接近的可能是std::is_polymorphic,它告诉(编译时)一个类是否具有可以继承的虚函数,或者一个类是否具有它具有的虚函数遗传。没有功能,编译时间或运行时间来判断某个类是否已被继承,或者某个类的基类是什么。