gpt4 book ai didi

ruby - 传递 Ruby 2 关键字参数而不显式指定它们

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

我如何将关键字参数传递给代码中对另一个方法的调用而不指定每个参数。

考虑以下方法以及对 kwargs 的新的一流支持:

def foo(obj, bar: 'a', baz: 'b')
another_method(bar, baz)
end

考虑旧的 Ruby 选项哈希语法:

def foo(obj, options = {})
another_method(options)
end

我想传递关键字参数而不像旧选项散列语法那样显式指定每个参数。这可能吗?

最佳答案

您可以使用双拼运算符:

def a(q: '1', w: '2')
p q
p w
end

def b(**options)
a(options)
end

b
# => 1
# => 2

b(q: '3', w: '4')
# => 3
# => 4

关于ruby - 传递 Ruby 2 关键字参数而不显式指定它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30495377/

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