标签: c#
int? x = null; int z = x ?? 10; //This works perfectly z = (x != null) ? x : 10; //Won't compile , z must be a nullable type
这两个运营商之间的差异是什么?为什么编译器不抱怨合并运算符? z 变量仍然不是可空类型,如果 x 不为null,则可以将其分配给 z 。为什么这种行为与三元运算符不同?有趣。