永发信息网

c++类的问题

答案:2  悬赏:0  手机版
解决时间 2021-05-23 17:48
  • 提问者网友:刺鸟
  • 2021-05-22 18:54

#include <iostream.h>
class point
{
public:
int t;
int k;
void get(int a,int b)
{
t=a;
k=b;
}

};
void main()
{
point x;
cout<<sizeof(x);

}

请问为什么这个类占8个字节,难道成员函数的形参不占空间和成员函数本身不占空间吗??

最佳答案
  • 五星知识达人网友:一叶十三刺
  • 2021-05-22 19:16

类的空间占用,只计算其内部成员的(static除外)的占用量,所有的方法是被类所有的对象所共享的,所以,你就是写上10000个方法,他还是8个字节,因为只有两个int,每个占4个字节


方法和成员变量在内存中的存储位置是不一样的,这一点要注意

全部回答
  • 1楼网友:像个废品
  • 2021-05-22 20:17

因为在类里头有2个整形变量,定义X的时候就会给这两个变量(t和k)分配存储空间,int 是4个字节,2个就是8个字节啦

至于那个get函数,因为你没有调用他,所以不占存储空间!

不难理解吧!

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯