C# Vbnet中是否有空条件运算符?

C# Vbnet中是否有空条件运算符?,c#,vb.net,C#,Vb.net,cIn C#有一个空条件运算符?。(有时称为Elvis运算符),如下所示: 如果project或customer为空,则返回null 在VB.NET中是否有一个等价物 请注意,我不是在寻找替换项。VB还有空条件运算符(从未听说过术语“Elvis”运算符): 注: VB中的推断类型需要“选项推断打开” 我很确定您最初的C代码示例应该是:var name=customer?.name 我很惊讶我在搜索时没有找到任何答案,堆栈溢出中也没有任何内容。请再次键入您的C#示例,不要输入错误。很难说清楚你的问

cIn C#有一个空条件运算符
?。
(有时称为Elvis运算符),如下所示:

如果
project
customer
为空,则返回
null

在VB.NET中是否有一个等价物


请注意,我不是在寻找替换项。

VB还有空条件运算符(从未听说过术语“Elvis”运算符):

注:

  • VB中的推断类型需要“选项推断打开”

  • 我很确定您最初的C代码示例应该是:var name=customer?.name


  • 我很惊讶我在搜索时没有找到任何答案,堆栈溢出中也没有任何内容。请再次键入您的C#示例,不要输入错误。很难说清楚你的问题是什么(除了晦涩难懂的“猫王”命名外,我还记下了两个拼写错误)。@DaveDoknjas公平地说,“猫王操作员”是一个常用的名字,当时操作员还没有正式的名字。@DaveDoknjas是的,在其他语言中,“猫王操作员”指的是
    ?:
    ,但C从来没有
    ?:
    。当C#获得
    ?。
    时,非正式地使用了相同的名称。1。我相信上的
    选项推断设置为默认值。2.我的打字错误。谢谢你的批改。C#和Vbnet中的语法相同。我真是太蠢了。@Enigmativity:是的-当我查找它时看到了,但在今天之前从未听过有人这么叫它。@DaveDoknjas术语“猫王运算符”实际上是由C语言设计团队成员(我相信是Mads Torgersen)在C#6 spotlight视频中为空传播运算符功能使用的。虽然wikipedia页面特别提到Elvis操作符是三元条件的,但它在See-Alve部分中也有一个指向安全导航操作符的链接。所以这并不是说这是完全错误的。
    
    var name = project?.customer?.name;
    
    Dim name = customer?.name