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

类普通成员函数怎么调用?

为什么成员数据有内存存放,虚成员函数能通过虚函数指针=》虚函数表找到 普通成员函数至少有函数指针吧 不然怎么找到实现呢?如果有为什么对象大小只有数据成员的大小 奇怪

正在回答

1 回答

因为,内存中有程序代码区,堆区,栈区,全局区(静态区),文字常量区。在定义一个类时,它的成员函数,虚构函数,构造函数就被存入程序代码区,供所有对象调用。

在实例化一个类的对象时,并没有拷贝类的函数,仅仅存入了数据成员,因此类的对象中有数据成员,然而当用父类的指针指向子类的对象时,调用同名函数时会调用父类的同名函数,当想要调用子类的同名函数引入了虚函数,

当调用普通成员函数时,计算机可以在代码区识别该函数,无需用函数指针,因而,在对象中只有数据成员的大小。

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

qq_随心所欲_9 提问者

一份代码实现,多份数据 貌似合理,你是老师?那么凶猛
2017-02-13 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

类普通成员函数怎么调用?

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