课程
/后端开发
/C++
/C++远征之多态篇
如果判断已经是Bird的指针了,为什么还要将obj转换一次,转换成Bird,再继续使用呢?
2018-08-07
源自:C++远征之多态篇 4-2
正在回答
这么说吧,之所以进行这个转换是因为使用父类Flyable指针通过虚函数实现机制我们可以动态的是实现同名的虚函数,但是对于子类Bird中的非虚函数(觅食函数),要想调用则必须是Bird,所以要进行强制类型转换。
梦游病者
慕粉4325388 回复 梦游病者
漂漂杰 提问者
那直接再用Bird类定义一个新的变量多省事,使用dynamic_cast是不是有点多此一举??
六个蒸蛋
举报
本教程将带领大家体会面向对象三大特性中的多态特性