所以即時嘗試在ruby中編寫一個簡單的定時器程序。我在「Timer」類中定義了我的方法,但是當我調用它們時,它給了我一個NoMethodError。任何想法爲什麼?謝謝您的幫助。在一個類中創建一個方法並在Ruby中使用它
require "Time"
class Timer
def start
$a = Time.now
end
def stop
Time.now - $a
end
end
puts "Type in 'Start'to to start the timer and then type 'Stop' to stop it"
s = gets.start
st = gets.stop
puts st
「$」沒有創建實例變量?我可以宣誓「@」成爲全球性的。我該如何創建一個「Timer實例」?你也應該注意到我是一個完整的新手,所以如果我聽起來像一個其原因,我:) – 2010-10-08 22:14:46
@bipolarpants:你有它倒退。 '@ foo'是一個實例變量,'$ foo'是一個全局變量。不要擔心新事物 - 每個人都在某個時間或另一個時間。 – Chuck 2010-10-08 22:59:32
哦好吧,謝謝。現在我得到它的工作,但我不得不在String類中創建一個方法「class String def to_t Timer.new end」,然後將它添加到「s = gets.to_t.start」那樣。有沒有辦法解決? – 2010-10-09 01:51:17