gpt4 book ai didi

ruby - 如何在 Ruby 中原生实现像 [] 这样的方法?

转载 作者:数据小太阳 更新时间:2023-10-29 07:27:30 24 4
gpt4 key购买 nike

所以如果像 [] 和 []= 这样的 index_acessor 方法没有硬编码到解释器中,有没有办法直接在 Ruby 中定义这些方法?换句话说,您如何定义一个方法名称,其中参数位于方法名称“[*]”的一部分

我发誓我曾经在 Pickaxe 或 Ruby Way 中找到过这个,但是翻了几个小时的书页让我两手空空

最佳答案

class Foo
def []=(k, v)
end

def [](k)
end
end

编辑 1:

尽管从定义上看可能不像,但上面定义的方法可以这样调用:

f = Foo.new
f[1] = 2
f[3]

关于ruby - 如何在 Ruby 中原生实现像 [] 这样的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8025077/

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