Как реализуется т.н. "оболочка значения" при упаковке? - C#
Формулировка задачи:
Цитата с MSDN:
Упаковка представляет собой процесс преобразования типа значения в тип object или в любой другой тип интерфейса, реализуемый этим типом значения. Когда тип значения упаковывается средой CLR, она
не понятно, как реализуется т.н. "оболочка значения"?
создает оболочку значения
внутри System.Object и сохраняет ее в управляемой куче. Операция распаковки извлекает тип значения из объекта. Упаковка является неявной; распаковка является явной. Понятия упаковки и распаковки лежат в основе единой системы типов C#, в которой значение любого типа можно рассматривать как объект.Решение задачи: «Как реализуется т.н. "оболочка значения" при упаковке?»
textual
Листинг программы
internal class Box<T> where T : struct { private T value; public Box(T value) { this.value = value; } public static explicit operator T(Box<T> box) { return box.value; } public static implicit operator Box<T>(T value) { return new Box<T>(value); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д