实例化一个类的对象后,她的成员函数装入内存吗?

一个类实例化一个对象后,会装入内存,并产生一个this指针,指向对象的首地址。那么这个对象的成员函数装入内存吗。如果不装入,一个只有成员函数没有变量的类,其对象岂不是不占... 一个类实例化一个对象后,会装入内存,并产生一个this指针,指向对象的首地址。那么这个对象的成员函数装入内存吗。
如果不装入,一个只有成员函数没有变量的类,其对象岂不是不占内存,不会有this指针了吗。比如class Animal {public: void eat(); void sleep();} Animal am; 在此例中am岂不是不占内存,没有this指针。
如果成员函数装入内存,应该如何装入?首先占多数字节无法解决,其次和以前建栈时变量装入内存,函数不占内存相矛盾。
两种说法似乎都矛盾,该如何解释,请高手指点一下。
函数偏移地址一定是4个字节吗?是不是有成员变量的话,第一个成员变量的地址即为this指针,没有成员变量,会用4个字节载入this指针?
展开
 我来答
百度网友6452b3628
2007-10-16 · TA获得超过1.7万个赞
知道大有可为答主
回答量:4881
采纳率:0%
帮助的人:5342万
展开全部
程序载入时候,所有的函数都装载到内存的代码区,包括类成员函数,并不是实例化后装入。
装入代码区的函数是不会在实例化后占有对象的空间的,这个和变量是不一样的。
湛蓝水晶
2007-10-17 · 知道合伙人数码行家
湛蓝水晶
知道合伙人数码行家
采纳数:1388 获赞数:9352
毕业北京科技大学数学与应用数学专业,学士学位,IT行业6年从业经验。现任公司项目经理。

向TA提问 私信TA
展开全部
函数本身代码不载入,但函数偏移地址(相对于this)会载入。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式