| 赞 | 0 |
| VIP | |
| 好人卡 | |
| 积分 | 1 |
| 经验 | |
| 最后登录 | 2017-2-4 |
| 在线时间 | 10 小时 |
月下可怜人
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 10 小时
- 注册时间
- 2005-11-23
- 回帖
- 3667

|
发表于 2007-12-19 08:27:49
|
显示全部楼层
如何说呢?
attr实际定义的是个读写属性,而非类的属性。
而def a=定义的是个虚拟属性,但他可以真的当作类的属性来使用。
具体
class S1
attr_reader :name
end
class S2
def name=(n)
@name = n
end
end
s1 = S1.new
s1.name = 10 #出错
s2 = S2.new
s2.name = 10 #正常
系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~ |
|