gpt4 book ai didi

具有可选参数的 C# 递归函数

转载 作者:太空狗 更新时间:2023-10-30 00:03:16 27 4
gpt4 key购买 nike

我在递归函数上遇到可选参数的问题

这是一个示例代码:

private static void RecursiveFunction(int x, int optional = 0)
{
if (x < 5)
RecursiveFunction(x + 1, optional++);
}

调用函数时:

RecursiveFunction(0);

我得到了以下结果(只需在即时窗口中调用此代码 string.Format("{0} - {1}", x, optional)):

"0 - 0"
"1 - 0"
"2 - 0"
"3 - 0"
"4 - 0"

我在这里遗漏了什么吗?谢谢!

最佳答案

更改自:

RecursiveFunction(x + 1, optional++);
// ^^

收件人:

RecursiveFunction(x + 1, ++optional);
// ^^

第一个执行操作然后递增可选
第二个在递增 optional 后执行操作。

来自 MSDN :

++ var
var ++

The first form is a prefix increment operation. The result of the operation is the value of the operand after it has been incremented.

The second form is a postfix increment operation. The result of the operation is the value of the operand before it has been incremented.

关于具有可选参数的 C# 递归函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13340027/

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