gpt4 book ai didi

c# - 当 null 条件运算符短路时,它是否仍然评估方法参数?

转载 作者:行者123 更新时间:2023-11-30 20:17:15 25 4
gpt4 key购买 nike

空条件运算符可用于跳过空目标上的方法调用。在这种情况下,是否会评估方法参数?

例如:

myObject?.DoSomething(GetFromNetwork());

myObjectnull 时,是否调用 GetFromNetwork

最佳答案

他们不会被评估。

class C
{
public void Method(int x)
{
Console.WriteLine("Method");
}
}

static int GetSomeValue()
{
Console.WriteLine("GetSomeValue");
return 0;
}

C c = null;
c?.Method(GetSomeValue());

这不会打印任何东西。 Resharper 将 GetSomeValue() 的计算标记为死代码:

enter image description here

关于c# - 当 null 条件运算符短路时,它是否仍然评估方法参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45521766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com