ALI*_*ANI 3 .net c# nullable declaration
这两个代码有什么区别:
public uint? a;
public uint a;
Run Code Online (Sandbox Code Playgroud)
我想知道如果我们使用有什么区别?在int或double或其他之后
提前致谢
Hab*_*bib 10
uint?例如,它是一个可空类型,它可以保存空值.
uint? a;
uint b;
a = null;
b = null; //this will cause error
Run Code Online (Sandbox Code Playgroud)
在C#4.0中,您可以使用null合并运算符进行检查
b = a ?? 0;
Run Code Online (Sandbox Code Playgroud)
和...一样
if (a.HasValue)
b = a;
else
b = 0;
Run Code Online (Sandbox Code Playgroud)
值类型不能保存空值,因为它们不是对象.用?您指定要在值类型周围使用不可见的包装器,并将其设置为null.
int a = null // won't work
int? b = null // works
Run Code Online (Sandbox Code Playgroud)