Generics memory management

У меня есть вопрос относительно того, как управляется память для Generics строгого типа

List<int> ints1 = new List<int>();
ints1.Add(1); ints1.Add(2); ints1.Add(3);

int[] ints2 = new int[10]();
ints2.Add(6); ints2.Add(7); ints2.Add(8);

Вопрос 1: Я предполагаю, что ints1 инициализируется новым ключевым словом ( new List () ) он становится ссылочным типом. Где значения 1,2,3 хранятся в памяти (хранятся ли они в стеке или в куче)?

Вопрос 2: Я знаю кое-что между List и int [] , List может масштабировать свой размер до любого размера во время выполнения, что ограничено в int [] во время компиляции. Итак, если значения 1, 2, 3 и сохранены в стеке, если новый элемент добавлен в List , скажем, 4, он не будет продолжаться до первых 3 справа, так как же ints1 знает ячейку памяти 4?

8
задан Henk Holterman 30 December 2011 в 00:20
поделиться