??运算符
为了让可空变量处理更简单,可以使用??运算符,这个运算符称为空接合运算符,是一个二元运算符,用来给null值的表达式赋予另一个值,其实就和?:三元运算符作用类似,如:
op1 ?? op2;
op1 == null ? op2 : op1;
这两行代码等价。op1可以是任意可空表达式。如果可空类型是null,就可以使用??运算符提供默认值
?运算符
这个操作符通常称为Elvis运算符或空条件运算符。
空条件运算符除了可以给值设置为可空变量外,另一个用途是用来触发事件,如
OnChanged?.Invoke(this,args);