dynamic_cast 向下转型时报错?-灵析社区

东三环

这段代码是直接从文章中复制下来的 #include using namespace std; int main(int argc, char const *argv[]) { // 动态转换 class Base {}; class Derived: public Base {}; Base* ptr_base = new Derived; Derived* ptr_derived = dynamic_cast(ptr_base); return 0; } 但是会报 `运行时 dynamic_cast 的操作数必须包含多态类类型`的错误,运行时也会报错 ![](https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241102/ddd7a86e4fefd5b32dcc6a6e1a14c19d.png) 我的理解是这段代码在进行向下转型,应该是没有问题的。

阅读量:13

点赞量:0

问AI
云端小仙女
错误信息本身已经说的非常明确了: «运行时 dynamic_cast 的操作数必须包含多态类类型» 多态类类型必须包含至少一个虚函数。