Ruby - ARGV.empty?这里的ModuleName else代码总是返回ModuleName

时间:2013-02-17 01:15:13

标签: ruby module argv

可能是愚蠢的问题

我有一些代码:

if ARGV.empty?
  ModuleName
else
  #Awesome Code Here
end

但无论如何,始终会评估ModuleName模块。有什么东西我不见了吗?

2 个答案:

答案 0 :(得分:1)

我认为模块实际上是在您需要时进行评估,而不是因为已到达ModuleName行。

示例:

在foo.rb文件中:

class Foo
   puts "foo"
end

然后在irb:

1.8.7 :001 > require 'foo'
foo
 => true 

答案 1 :(得分:0)

我不确定,但是您可以使用以下内容测试脚本所获得的参数:

until ARGV.empty? do
  puts "Argument: '#{ARGV.shift}'"
end

也许你真的把它传给了一些args?