gpt4 book ai didi

ruby - hash[key] 是 hash.fetch(key) 就像 @ivar 是什么?

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

扩展标题:如果实例变量尚未初始化,如何以导致异常的方式访问实例变量 (@ivar)?

最佳答案

然而,对于实例变量,没有提供此功能的内置方法;

由于 Hash#[] 在您的示例中类似于 @ivar(或 instance_variable_get(:@ivar)),那么 Hash#fetch 类似于

def instance_variable_fetch(sym)
raise(NameError, "instance variable not found: #{sym}") unless instance_variable_defined?(sym)
instance_variable_get(sym)
end

示例:

@var = 42
instance_variable_fetch(:@var)
#=> 42
@ivar = nil
instance_variable_fetch(:@ivar)
#=> nil
instance_variable_fetch(:@other_var)
#=> NameError: instance variable not found: @other_var

关于ruby - hash[key] 是 hash.fetch(key) 就像 @ivar 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54296485/

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