嗨,每一个我都没有问题
1)
class ClassName
{
public int[] a = new int[100];
}
创建此类的对象时会发生什么意味着存储在堆栈[值类型]或堆上的整数数组[参考类型]
我很困惑,因为specs值类型存储在Stack上,然后数组将存储在堆栈上。
但是参考类型是根据规范
在堆上创建的 请大家帮帮我理解这一点。我不想在不知道幕后发生的事情的情况下编写代码先谢谢
答案 0 :(得分:4)
此处没有值类型。所以这个问题没有实际意义。 ClassName和int []都是引用类型。
如果将值类型声明为自动本地,则将其存储在堆栈中。如果它在另一个类型中声明,则它存储在另一个类型中。
C#的最重要的神话之一是值类型总是存储在堆栈中。