我已经定义了一个 Person 类(姓名、年龄)。我试图在 @age 实例变量上重载 += 运算符,但我没有管理。这是我的脚本尝试:
class Person
def initialize(name, age)
@name = name
@age = age
end
def age+= (value)
@age += value
end
def to_s
return "I'm #{@name} and I'm #{@age} years old."
end
end
laurent = Person.new "Laurent", 32
puts laurent
laurent.age += 2
puts laurent
这是我在终端中遇到的错误:
person.rb:8: syntax error, unexpected tOP_ASGN, expecting ';' or '\n'
def age+= (value)
^
person.rb:15: syntax error, unexpected keyword_end, expecting $end
那么,怎么了?
提前致谢。对不起,如果这可能是一个太明显的问题。