【发布时间】:2020-02-08 13:34:27
【问题描述】:
为什么System.Nullable<T> 类型有StructLayout(LayoutKind.Sequential) 属性?
我在 CLR via 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> 类型的属性。
【问题讨论】:
标签: c# clr nullable custom-attributes