【发布时间】:2014-05-12 18:38:10
【问题描述】:
假设我有一个 Ruby 类:
class MyClass
def self.property
return "someVal"
end
def self.property=(newVal)
# do something to set "property"
success = true
return success # success is a boolean
end
end
如果我尝试做MyClass.property=x,整个语句的返回值总是x。在许多基于 C/受启发的语言中,返回一个布尔“成功”值是一种约定——是否可以在 Ruby 中使用“等于语法”为 setter 执行此操作?
此外 - 如果这不可能,为什么不呢?允许“equals setter”操作返回值是否有任何可能的缺点?
【问题讨论】:
标签: ruby properties setter