a), когда массив это ссылочный тип?
Потому что в кучу попадают сами данные, а ссылки на отдельные элементы надо где-то хранить. Они и живут в стеке.
Потому что ссылка она указывает на объект в куче, а если поместить ссылку в кучу потребуется ссылка на эту ссылку на объект в куче🗿 Но это упрощенное понимание, если хотите полного понимания разберитесь с тем как компилятор интерпретирует c# в cil код, а потом его в native код, алгоритм по которому компилятор выбирает поместить, что-то в кучу или стек сложен и основывается на многих параметрах, но основное - область видимости.
Обсуждают сегодня