gpt4 book ai didi

ruby - Ruby 中的命名参数不起作用?

转载 作者:数据小太阳 更新时间:2023-10-29 08:20:43 25 4
gpt4 key购买 nike

<分区>

我想知道为什么命名参数不能像我预期的那样工作。

 def my_method(var1, var2 = 1, var3 = 10)
puts var1, var2, var3
end

my_method(999, var3 = 123)

输出

999
123
10

而不是(至少,我猜应该是):

999
1
123

那么,如何使用命名参数呢?

P.S. 当我使用散列时,它不是我要找的:

def my_method(var1, vars = {var2: 1, var3: 10} )
puts var1, vars[:var2], vars[:var3]
end

my_method(999, var3: 123)

999

123


my_method(999, var2: 111, var3: 123)

999
111
123



my_method(999)
999
1
10

所以我必须覆盖 vars 的每个值,或者根本不覆盖它们。有没有更方便的方法?

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