什么是 ? NotifyPropertyChanged 中的运算符

what is ? operator in NotifyPropertyChanged

我遇到过像

这样的代码
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propName));

我试图在上面的代码行中找到 PropertyChanged? 的含义。

这是 空传播 的语法,它是 introduced in c# 6.0。这里的 ? 是空条件运算符。此代码等效于:

if(!(PropertyChanged is null))
    PropertyChanged.Invoke(this, new PropertyChangedEventArgs(propName));