2013-03-24 48 views
1

Ruby中似乎没有主要功能。那么Ruby中的主要功能是什么?我在哪里写Ruby的主要功能?

+2

整个脚本在顶层环境中始终执行。 – matt 2013-03-24 02:48:54

+2

需要记住的是每行Ruby代码都是可执行的,包括类声明和方法定义。它实际上是在遇到它时执行的。 – matt 2013-03-24 02:55:04

+0

可能的重复:http://stackoverflow.com/questions/9687106/is-there-a-main-method-in-ruby-like-in-c – Josh 2013-03-24 02:59:57

回答

6

Ruby中没有这种东西。解释器从上到下执行代码,所以你的主脚本隐含地是“main”的主体。例如,假设您有两个文件script_a.rbscript_b.rb。而假设的script_a.rb内容如下:

require_relative './script_b' 

puts 1 + 1 

现在,如果你运行ruby script_a.rb你会在实际的代码执行方面得到什么将是如下:查找script_b.rb,执行的script_b.rb内容,执行puts 1 + 1

+1

有趣的是,Ruby中有一个'main'对象,你可以通过打开IRB并询问它是否“自我”来寻找。这是一个[顶级对象](https://banisterfiend.wordpress.com/2010/11/23/what-is-the-ruby-top-level/),它用作所有其他对象的上下文。这个很好的答案:http://stackoverflow.com/a/917842/1042144 – 2013-03-24 03:03:17