最近看代码碰到??运算符,看IL也能知道其作用,但没找到任何官方点的说明,有人碰到过吗?
2 回答
GCT1015
TA贡献1827条经验 获得超4个赞
MSDN上面有说明: 如果 ?? 运算符的左操作数非空,该运算符将返回左操作数,否则返回右操作数。 备注 可空类型可以包含值,或者可以是未定义的。?? 运算符定义当可空类型分配给非可空类型时返回的默认值。如果在将可空类型分配给非可空类型时不使用 ?? 运算符,将生成编译时错误。如果使用强制转换,并且当前未定义可空类型,将发生 InvalidOperationException 异常。 有关更多信息,请参见可空类型(C# 编程指南)。
一只斗牛犬
TA贡献1784条经验 获得超2个赞
.net2.0新增的可空类型可以包含值,或者可以是null。?? 运算符定义当可空类型分配给非可空类型时返回的默认值。如果在将可空类型分配给非可空类型时不使用 ?? 运算符,将生成编译时错误。具体demo可以看MSDN
- 2 回答
- 0 关注
- 590 浏览
添加回答
举报
0/150
提交
取消