fooDelegate?.Invoke();中的 .? 的理解

  1. 这是在调用委托里的所有方法。
  2. ​?.​ 是一种安全调用方式,意思是:“如果 fooDelegate​ 不是 null,才去调用 Invoke()​。”
  3. ​Invoke()​ 表示“执行这个委托里的所有方法”。
  4. ​fooDelegate?.Invoke()​ 可以解释为:如果委托不为空,就执行里面的所有方法