论坛首页 编程语言技术论坛

空格的 ”陷阱“

浏览 2479 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-05-13  
今天无意中碰到一个空格带来的“陷阱”:

def a
  10
end

b = a+1
=> 11

b = a + 1
=> 11

b = a+ 1
=> 11

b = a +1
ArgumentError: wrong number of arguments (1 for 0)
        from (irb):8:in `a'
        from (irb):8

   发表时间:2008-05-13  
果然
b = a +1

它给当成省略括号的方法调用了,等价于:
b = a(+1)

等价于
b = a(1)


陷阱,陷阱
0 请登录后投票
   发表时间:2008-05-13  
我注意到这个“问题”已经被列入到1.9的TODO list里面了,也许很快就会有修正,呵呵~
0 请登录后投票
   发表时间:2008-05-13  
所以写代码要规范
还有比如不能在yml中用tab等
0 请登录后投票
   发表时间:2008-05-13  
这个我错,在去年时,我也犯过,一样的,哈哈

http://agi-alvin.iteye.com/blog/69660
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics