Страницы

Поиск по вопросам

понедельник, 12 ноября 2018 г.

В чем суть отличия между ссылочными и значимыми типами данных в C#?

В чем суть отличия между ссылочными и значимыми типами данных в C#?


Ответ

Значимые типы хранят значение, а ссылочные - ссылку на значение. class ByRef { public byte Value { get; set; } }
struct ByVal { public byte Value { get; set; } }
class Program { static void Main(string[] args) { ByRef byRef = new ByRef { Value = 0 }; ByVal byVal = new ByVal { Value = 0 }; } } В этом коде и byRef, и byVal создаются как локальные переменные метода Main на стеке. Переменная byVal содержит значение Value, а переменная byRef содержит ссылку на значение Value, хранящееся на куче.

Комментариев нет:

Отправить комментарий