根据文档:
http://msdn.microsoft.com/en-us/library/x13ttww7.aspx:
volatile关键字可以应用于引用类型.
那么为什么使用Nullable< T> ..参考类型是非法的!
请注意,我实际上并不需要在Nullable< T>上的易失性语义.场上,我偶然遇到这个错误,只是好奇.
解决方法
Nullable<T>
不是参考类型.这是一个值类型:
public struct Nullable<T> where T : struct,new()
注意结构部分.
只是因为它有一个空值不会使它成为引用类型…它是一个可空的值类型.有关详细信息,请参阅C#4语言规范的第4.1.10节.