【发布时间】:2012-09-17 16:44:45
【问题描述】:
在 c# 中(可空类型)
int a = 10;
int? b = 20;
int? c = null;
System.Console.WriteLine( a+c??b );
输出为:20
如果 (c??b +a) 那么输出是 30
我不明白为什么..
【问题讨论】:
-
别人已经给出了解释。所以这就是你真正想要的:
a+(c??b)和(c??b)+a。他们确实同意,因为+是可交换的(即使使用可空整数)。
标签: c#