Почему тип System.Nullable<T>
имеет атрибут StructLayout(LayoutKind.Sequential)
?
Я нашел следующий фрагмент текста и кода в CLR через C# книгу:
Вот логическое представление того, как определяется тип System.Nullable:
[Serializable, StructLayout(LayoutKind.Sequential)]
public struct Nullable<T> where T : struct {
//... unrelated to the question code
}
Итак, почему для System.Nullable<T>
логично иметь StructLayout(LayoutKind.Sequential)
атрибут применяется? Я считаю, что было бы достаточно ответить на мой вопрос, если бы кто-то просто объяснил, для какого случая (или случаев) был добавлен атрибут (то есть, для какой цели он служит).
Я понимаю, что делает атрибут. Я не понимаю, зачем нужен атрибут для типа System.Nullable<T>
.