当父类中没有虚函数的时候,为什么无法通过dynamic_cast函数将指向父类的指针转化为指向子类的指针
时间: 2024-05-30 11:08:14 浏览: 162
C++中的类型转换static_cast、dynamic_cast、const_cast和reinterpret_cast总结
dynamic_cast是用于进行动态类型转换的,只有当父类中有虚函数时,dynamic_cast才能够正确地将指向父类的指针转换为指向子类的指针,因为只有在有虚函数的情况下,对象才能够被识别出其真实类型,否则编译器无法确定对象的类型信息,因此无法进行转换。因此,当父类中没有虚函数时,无法使用dynamic_cast进行指针的类型转换。
阅读全文