变量和内存问题

来源:百度知道 编辑:UC知道 时间:2024/05/12 11:23:16
int a;如果a不初始化只声明这样会不会占内存呢?如果换成object呢?这个和类型有关系吗?和语言有关系吗?谢谢~~~!

要看int a在什么地方声明的,如果实在程序体中声明的,那么在使用它时会占用内存,其内存位置在栈中。如果a声明在结构体中,没有实例化这个结构体体时是不占用内存的。
如果声明在类中,如果是类的成员变量,没实例化前不占用内存。如果声明在类的方法里,那么在调用这个方法时才会给a分配内存。

会的,obj也一样占内存,obj的占用内存更大一些,因为还要分配空间给方法表指针。

和类型没有关系,不管是什么都会占内存,只是大小不一样,如果是一个指针只占四个字节,如果是int 也占4个类型,如果是结构体,那么就根据里面数据成员而定了。

都会占用内存,因为你没初始化的话只是没给它赋值,并不代表他没分配内存