为了账号安全,请及时绑定邮箱和手机立即绑定

为什么子类非虚函数不能覆盖父类的

当A是B的父类时,A、B均重写了a方法

A *a = new B

此时 a->a() 调用的为什么是A的方法而不是B的方法

老师只讲了虚函数能够在虚函数表里覆盖,但没说为什么非虚函数不能直接覆盖或者隐藏

正在回答

1 回答

https://img1.sycdn.imooc.com//5c2c7f93000191b412340186.jpg

看一下指针类型的父类指针指向子类对象的说明。

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之多态篇
  • 参与学习       66236    人
  • 解答问题       314    个

本教程将带领大家体会面向对象三大特性中的多态特性

进入课程

为什么子类非虚函数不能覆盖父类的

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信