最佳答案
我对 堆栈 VS 堆之间的内存分配基本知识感到困惑。根据标准定义(每个人都会说的东西) ,所有的 值类型将被分配到 Stack,而 参考文献类型将被分配到 堆。
现在考虑下面的例子:
class MyClass
{
int myInt = 0;
string myString = "Something";
}
class Program
{
static void Main(string[] args)
{
MyClass m = new MyClass();
}
}
现在,在 c # 中如何进行内存分配?MyClass
(即 m
)的对象是否将完全分配给堆?也就是说,int myInt
和 string myString
都会堆起来?
或者,对象将被分成两部分,并被分配给两个内存位置,即 Stack 和 Heap?