我似乎不明白爲什麼我不能訪問實例變量,如果他們沒有初始化。當我將實例變量添加到attr_accessor時,出現以下錯誤。無法訪問實例變量語法錯誤,意外的':',期待keyword_end
syntax error, unexpected ':', expecting keyword_end (SyntaxError)
attr_reader :name :list
我能夠訪問名稱和年齡的屬性方法,但沒有其他的。這是我的代碼。
class Dancer
attr_reader :name
attr_accessor :age :list
def initialize(name, age)
@name = name
@age = age
@list = []
end
def pirouette
"*twirls*"
end
def bow
"*bows*"
end
def queue_dance_with(partner)
@partner = partner
end
def card
@list << @partner
end
def begin_next_dance
puts "Now dancing with #{@list[0]}"
@list.shift
end
end
爲什麼我不能訪問@partner
和@list
?如果我將它們添加到attr_accessor
或attr_reader :list :partner
它給我一個錯誤。
這是一個純Ruby的問題,因此不應該有一個Rails標籤。 –