如果一个类没有成员函数,它的对象还占内存空间吗??

flyiner 2006-04-25 08:30:27
“一个类对象所占的内存空间由它的数据成员所占的空间总和所决定,一个类的成员函数是不占对象的内存空间的”钱能的教材上这么说
...全文
343 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
anwsp 2006-04-27
  • 打赏
  • 举报
回复
占一个字节
来保证不同实体之间的不同
abblly 2006-04-27
  • 打赏
  • 举报
回复
如果一个类没有成员变量也没有虚函数,它只占一个byte的空间用来确定唯一的地址,因为如果不占空间的话它的地址将和后面定义的其他的变量占用同一个地址,为了区分所以必须有一个空间,大小一般是1。。
universee 2006-04-26
  • 打赏
  • 举报
回复
virtual 成员函数是要占内存空间的
zwzzwz 2006-04-26
  • 打赏
  • 举报
回复
占一个字节
code_tin 2006-04-25
  • 打赏
  • 举报
回复
占一个字节
来保证不同实体之间的不同
cutenoob 2006-04-25
  • 打赏
  • 举报
回复
那能否这么说:如果类有成员变量的话,对象占的内存空间就是成员变量所占的内存空间??

~~~~~~~
刚开始都是这么理解的...

xmlhb 2006-04-25
  • 打赏
  • 举报
回复
1.nonstatic数据成员的总和所决定
2.对齐alignment
3.virtual
以上取自inside the c++ object model
flyiner 2006-04-25
  • 打赏
  • 举报
回复
“一个类对象所占的内存空间由它的数据成员所占的空间总和所决定”

那能否这么说:如果类有成员变量的话,对象占的内存空间就是成员变量所占的内存空间??
sankt 2006-04-25
  • 打赏
  • 举报
回复
这个类里没有任何真正的成员变量,所以大小应该是0,但0大小不好在内存中定位一个地址,所以,就规定它大小为0的对象要占一字节空间,以便让它拥有一个合法的地址。
flyiner 2006-04-25
  • 打赏
  • 举报
回复
晕了,其实我是想问“如果一个类没有成员变量,它的对象还占内存空间吗?? ”

请问fantasyzzz(陈陈),你的说法确定吗?

可是对象空间是由成员变量决定,和成员函数有关系吗??

braveconf 2006-04-25
  • 打赏
  • 举报
回复
成员函数是不占instance大小的
fantasyzzz 2006-04-25
  • 打赏
  • 举报
回复
如果一个类没有成员函数,它只占一个byte的空间用来确定唯一的地址,因为如果不占空间的话它的地址将和后面定义的其他的变量占用同一个地址,为了区分所以必须有一个空间,大小一般是1。。

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧