我是 ruby 的新手,一般来说也是编程的新手。我在独立的 ruby 脚本中有一段代码,它从 yaml 文件中读取数据并将该数据分配给方法中的变量。这都是在一个方法中完成的。在方法的定义之外,我调用该方法并打印分配的变量的值。但是,呃,在方法中赋值的变量的值是nil……为什么?这与我假设的面向对象编程有关。有人可以详细说明吗?
下面是代码。先感谢您。
#!/usr/bin/env ruby
require 'pg'
require 'yaml'
source_connection=nil
def load_configurations
file_name = nil
ARGV.each do|a|
file_name = "#{a}"
end
dest_options = YAML.load_file(file_name)
source_connection = dest_options['dest_name']
end
load_configurations()
puts source_connection
##### returns nothing. why? #####