Однако автоматические свойства (насколько я понимаю) не могут иметь никакой логики и просто возвращают или устанавливают значение базового поля. Насколько мне известно, автоматические свойства обрабатываются компилятором и JIT так же, как и любые другие методы.
(Все нижеследующее будет основано на предположении, что приведенный выше абзац верен.)< /strong>
Свойства типа значения ведут себя иначе, чем сама переменная, но свойства ссылочного типа предположительно должны вести себя точно так же, как прямой доступ к базовой переменной.
Свойства типа значения ведут себя иначе, чем сама переменная.
Свойства типа значения демонстрируют поведение, отличное от поведения самой переменной, но свойства ссылочного типа предположительно должны вести себя точно так же, как прямой доступ к базовой переменной.
Свойства типа значения демонстрируют поведение, отличное от самой переменной.
Свойства типа значения демонстрируют поведение, отличное от поведения самой переменной, но свойства ссылочного типа предположительно должны иметь то же самое поведение, что и прямой доступ к базовой переменной.
Свойства типа значения ведут себя иначе, чем сама переменная.
Свойства типа значения ведут себя иначе, чем сама переменная, но свойства ссылочного типа предположительно должны вести себя точно так же, как прямой доступ к базовой переменной.
Свойства типа значения демонстрируют поведение, отличное от самой переменной. р>
Код: Выделить всё
// Automatic Properties Example
public Object MyObj { get; private set; }
Если нет, что мешает компилятору или JIT автоматически встроить их?
Примечание: я понимаю, что прирост производительности, вероятно, будет незначительным, особенно когда JIT, скорее всего, в любом случае встроит их, если использовать достаточное количество раз, но небольшими, поскольку выигрыш может быть, кажется логичным, что такая, казалось бы, простая оптимизация будет введена в любом случае.
Подробнее здесь: https://stackoverflow.com/questions/957 ... by-default