浏览 1625 次
锁定老帖子 主题:我是个RUBY初学者,想问些简单的问题??
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2006-11-14
alias oldPlus + def +(other) oldPlus(other).succ end end 1 + 2 » 4 a = 3 a += 4 » 8 那位帮我解释一下啊????? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-11-14
Fixnum是整数类型,如后面的1、2就是这个类型。
表达式1+2实际上调用了1的方法名为+的方法,传递的参数为2. 这样看: 1.add(2) 1.+(2) 1+2 上面的代码是重新定义了Fixnum的+方法,先将老的+方法实现重命名为oldPlus,然后在新的实现里,调用老的实现,并在其基础上再加一(succ方法就是自增一) 因此, 1+2得到的结果就是默认结果多1 a += 4 同理。 |
|
返回顶楼 | |