我在我的代码中经常使用 ?? 运算符。但今天我遇到了一个问题。
以下是我使用 ?? 运算符的代码:
private List<string> _names;
public List<string> Names
{
get { return _names ?? (_names = new List<string>()); }
}
但是在某些地方,我也看到了这段代码。
private List<string> _names;
public List<string> Names
{
get { return _names ?? new List<string>(); }
}
这些代码之间的真正区别是什么呢?在一个代码中,我赋值_names = new List(),而在另一个代码中,我只是做了new List()。
private List<string> _names = new List<string>();
. - jgauffin