Что такое упаковка и распаковка в .NET?
Этот вопрос проверяет знание концепций упаковки и распаковки, которые позволяют работать с типами данных значений и ссылок.
Короткий ответ
Упаковка (boxing) — это процесс преобразования значения типа в ссылочный тип, а распаковка (unboxing) — это преобразование обратно в тип значения.
Длинный ответ
Что такое упаковка и распаковка?
- Упаковка (Boxing): Преобразует тип значения в объект (ссылочный тип).
- Распаковка (Unboxing): Преобразует объект обратно в тип значения.
Пример упаковки и распаковки:
int a = 10; // Тип значения
object o = a; // Упаковка
int b = (int)o; // Распаковка
Как это работает?
- Упаковка происходит автоматически, когда тип значения присваивается переменной типа object.
- Распаковка требует явного приведения типа.
Упаковка и распаковка позволяют работать с типами данных значений как с объектами, но требуют дополнительных операций для конверсии.