什么是?
下面的C#代码说明什么?
var handler = CallBack; handler?.Invoke();
我已经读过你可以使用a ?
之前的类型来表明它是一个可以为空的类型.这是做同样的事吗?
这是C#6代码,使用null conditional operator
指示NullReferenceException
如果handler
为null ,此代码不会抛出异常:
Delegate handler = null; handler?.Invoke();
这样可以避免编写在以前版本的C#语言中必须执行的空检查:
Delegate handler = null; if (handler != null) { handler.Invoke(); }