我使用紅寶石1.8.7。我可以發誓我已經在我的腳本底部寫過我的函數,並且它工作正常。腳本底部的Ruby方法?
我必須把它們放在頂部嗎?這似乎是他們現在工作的唯一方法。沒什麼大不了的。我只是希望讓他們在底部,所以我想我會問。
我使用紅寶石1.8.7。我可以發誓我已經在我的腳本底部寫過我的函數,並且它工作正常。腳本底部的Ruby方法?
我必須把它們放在頂部嗎?這似乎是他們現在工作的唯一方法。沒什麼大不了的。我只是希望讓他們在底部,所以我想我會問。
您可以在一個或多個BEGIN塊(從Perl繼承,它從awk繼承它們)中進行初始化代碼。
can_i_do_this? #=>yes
BEGIN {
def can_i_do_this?
puts "yes"
end
}
以及物品是否完整,也有最終塊:
END {
can_i_do_this? #=> yes
}
def can_i_do_this?
puts "yes"
end
a
def a
puts "Hello world!"
end
在Ruby中運行此腳本會給你:
script.rb:1:in `<main>': undefined local variable or method `a' for main:Object (NameError)
所以,不,你不能讓他們在底部。由於Ruby是一種解釋型語言,因此任何代碼都將在運行時進行分析和處理。因此,您只能運行在實際引用之前已經定義的代碼(調用方法,使用變量...)。
很酷。會做。謝謝你的解釋。 – 2012-07-23 21:07:50
你有你有問題一些具體的代碼? – 2012-07-23 20:59:30