gpt4 book ai didi

C# - 运算符 : ? - 是否可以向函数传递某些内容或不传递任何内容?

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

我知道还有其他方法可以完成我需要做的事情。我只是想知道它是否可以完成。

这是关于替换 if else 的问号。

public void doSomething() { ...... }
public void doSomething(int i) { ...... }
public void f(int i)
{
doSomething( i > 0 ? [NOTHING] : i );
}

有什么我可以写的东西(而不是 [NOTHING])来不向函数传递参数并且能够调用 doSomething() 吗?

最佳答案

没有。您应该使用标准的 if..else 或者如果 doSomething 返回某些内容,您可以这样重写它。

i > 0 ? doSomething() : doSomething(i);

三元的结果必须兼容。方法调用由编译器嵌入,以了解要跳转到的指令。三元运算符无法重写它。

关于C# - 运算符 : ? - 是否可以向函数传递某些内容或不传递任何内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38380167/

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