а локальные все переменные хранятся в стэке тогда в чем смысл heap или я что то не правильно понял ?
в стеке может быть либо значение, либо ссылка на кучу
На стеке хранятся только значимые типы данных, и ссылки на кучу с переменными ссылочных типов. В стеке все хранить не будешь.
локальные обекты хранятся только в стэке
Возможно ты перепутал основы работы GC, там описывается, что верхушкой не удаляемых обьектов является, локальные переменные, статические члены, и параметры. Но, если обьект ссылочный, он все равно хранится на куче, а ссылка на стеке.
размер стека не такой уж и большой)
Тогда почему мы неможем использывать null check оператор ?. к локальным переменным ?
кто это сказал?
Судя по всему это IDE не дает говнокодить, вызывать переменные класса без инициализации.
или он хочет сделать var i = 0; i?.ToString(); или типа того)
Вот так, да нельзя.
ну это уже другая ситуация)
так оно и без ? подсветится ошибкой
переменная не инициализирована
Я сейчас привду пример
Обсуждают сегодня