所以如果像 [] 和 []= 这样的 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/