C#中类类型是引用类型,本质是个指针
所以C#中所有类对象本身都是4字节(32位机),包含一个内存地址,这个地址指向堆内存空间
class A
{
public int i;
public A a;
}
A object = new A();
object本身占用4字节内存,存放堆内存地址,这块内存的大小是8字节(int 4字节,a也是四字节),当成员a实例化的时候,只是a的内容不是null了,存放堆内存中的另一个地址,指向一块8字节内存空间。
因为能确定A的一个对象占用多少内存空间(4字节,C#所有类对象都是占4字节,在32位机中),所以可以定义
资料引用:http://www.knowsky.com/540666.html