<分区>
想象一下,相当基本的问题
int a = 5;
int[] b = new int[1];
b[0] = 5;
a
和b
是否占用相同的内存空间?我假设 b
比 a
大,因为它必须将自身的长度存储在某处,所以我认为它会比 IntPtr.Size
大,但我不确定。
我正在尝试编写代码,其中数组的长度在运行时确定,并且可以是 1 或更大 (<10)。我不知道如果长度设置为 1,我是否应该只创建一个数组,或者在代码中有一个特殊情况,并且只使用底层类型来设置长度 == 1。
我知道 a
是值类型,而 b
是引用类型。