请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于虚函数表的问题

请问为什么这里子类对象s1里面会包含父类的private变量_color呢?private变量不是不能被子类继承的吗?
另外为什么_vfptr这个指向虚表的指针是否是每个子类对象所独有的呢?如果是,它为什么会在父类Shape里面呢?
图片描述

正在回答

1回答

C++的对象模型中每一个子类体内都包含其父类,只是private不可见而已。虚表是父类已有的虚函数指针处重新用子类的函数地址覆盖而已。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕侠1246815 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2022-05-03 12:46:29
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信