gpt4 book ai didi

ruby - 将 setter 与 instance_variable_set 一起使用

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

我正在使用这个简单的结构来初始化一个带有散列的类:

def initialize(params)
params.each { |k, v| instance_variable_set("@#{k}", v) }
end

但是 instance_variable_set 不使用 setter,所以我无法处理特殊能力。有没有其他好的方法来初始化一个类并在 setter 方法中处理一些额外的东西?

最佳答案

您可以使用send 调用self 上的setter 方法:

params.each { |k, v| self.send("#{k}=", v) }

关于ruby - 将 setter 与 instance_variable_set 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27945074/

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