Обновить
Комментарии 13
Ну, теперь посомтрим, если понравится, то могу сделать ещё такие блиц опросы :)
у меня есть эта книга на английском, если кому надо…
1) Ещё System.Runtime.Serialization.FormatterServices.GetUninitializedObject.
Похоже, что этот метод вызывается во время десереализации объекта, непосредественно перед заполнением всех полей объекта (восстановлением состояния объекта)…
я хоть еще и джуниор но некоторые моменты понял и понял что я мало знаю )
Я бы дополнил 5-ый ответ.
Отсутствие конструктора объясняется быстрым выделением памяти для больших массивов.
Например
Point[] points = new Point[1000000];
Выделение происходит одним блоком и заполнение его нулями.
Если бы вызывался конструктор, то его бы пришлось вызывать для каждого объекта, что сильно бы увеличило время выполнения.
и что ещё интересно, т.к. все массивы — ссылочные типы, то и блок памяти выделится не в стеке а в куче :) Хотя points и значимый тип!
НЛО прилетело и опубликовало эту надпись здесь
3) а internal — это не то же самое?
переформулировал, так должно быть понятнее :)
да, так понятнее)
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.