Я запутался в основах распределения памяти между стеком и кучей . Согласно стандартному определению (то, что все говорят), все Типы значений будут размещены в стеке , а Ссылочные Типы будут помещены в Кучу .
Теперь рассмотрим следующий пример:
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
оба отправятся в кучу?
Или объект будет разделен на две части и будет размещен в обоих местах памяти, то есть в стеке и куче?