可以为null的值类型
昨天看Creating a Data Access Layer文章时,里面讲到了强类型的DataSet,由系统自动生成的代码里面,我发现每个值类型(Value Type值类型,相对于Reference Type引用类型)的参数是这么声明的:
int? ProductID, string? ProductName
很奇怪,到MSDN上才发现了"??"操作符,这个操作符是这个意思:
在声明变量的时候,可以为值类型的变量赋值null,在作为二元操作符时,用来判断左边变量是否为null,如果为null,就将右边的变量赋给=前面的变量。 举个例子:
int? IntType = null; // 是正确的
int IntType = null; // 在编译时就不会通过
int? Para1 = null;
int Para2 = 8;
int Result = Para1 ?? Para2; // 此时的意思是如果Para1为null,则Result == Para2
- ← Previous
C#范型例子 - Next →
通过Performancing,做Blog的实时备份