【发布时间】:2021-09-14 20:31:53
【问题描述】:
我不能使用 dynamic_cast,因为我不知道派生类的名称。对于 std::is_base_of 也是如此。
【问题讨论】:
-
基类是纯虚的吗?那么答案是肯定的,物有所值。
-
通常,如果您关心一个对象实际上是派生类型还是基类型,那么您可能在使用继承时犯了一个错误。
-
问题不清楚。您无需知道类型的名称即可查询该类型的属性。一旦你有一个对象:
using type_of_the_object = decltype(object); -
typeid 应该为您提供多态类型,您可以将其与已知的基类类型进行比较。
标签: c++ hierarchy base derived