我刚开始第一次在 C# 中使用安全导航运算符,我想知道这是否是该运算符的正确用例:
public bool HasAttributes
{
get
{
return this.SomeClassMember?.Attributes?.Count > 0;
}
}
为什么这段代码没有给我编译器错误?我认为如果例如结果为 nullthis.Notification
或为 null,则结果为this.Notification.Attributes
null,但return null
另一方面不起作用,因为它似乎没有隐式转换为 false。如果我在这里没有正确使用运算符,有人可以解释我如何在我的用例中正确使用它吗?