gpt4 book ai didi

ruby - 我可以通过方法设置全局值吗?

转载 作者:太空宇宙 更新时间:2023-11-03 16:51:06 24 4
gpt4 key购买 nike

我想知道是否有一种方法可以让我从一个方法中配置一个全局变量,例如:

Class myExample
$my_global_variable = 0

def initialize
change_my_global_variable
end

def change_my_global_variable
$my_global_variable = 2
end
end


Class myExample2 < myExample

@this_value = $my_global_variable
#I want @this_value to be set to 2
end

#Updated:
#Currently when I tried what i have above I get the following:
#@this_value = 0 instead of 2

我正在使用非常旧的代码,我需要在加载后更改全局变量的值,因为它需要从函数中提取值。有没有一种方法可以初始化将要更改的全局变量?目前 "$my_global_variable"永远不会改变,它保持值 0

最佳答案

您的方法永远不会被调用,否则它会起作用。

您的方法在 initialize 中被调用,但是 myExamplemyExample2 的新实例从未创建过,因此您的初始化和方法调用永远不会发生了。

这是解决这个问题的一种方法:

Class myExample2 < myExample
@this_value = change_my_global_variable
end

关于ruby - 我可以通过方法设置全局值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21560120/

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