Project1

标题: 谁帮我解析一下这个脚本 [打印本页]

作者: 灰太狼与喜羊羊    时间: 2014-2-24 22:07
标题: 谁帮我解析一下这个脚本
  1. def show
  2.    p 1                       #显示为1
  3. end
  4. show                         #显示为1
  5. #
  6. alias old_show show
  7. def show
  8.    old_show
  9.    p 2                       #显示为2
  10. end
  11. show  
复制代码
问题:第4、10行的show是干什么的?是函数吗?
      alias怎么替代原函数了?
      
作者: 铃仙·优昙华院·因幡    时间: 2014-2-24 22:48
RUBY 代码复制
  1. def show                 # 定义一个名叫 show 的方法 or 函数
  2.    p 1                       # 输出 1 这个数字
  3. end                         # 结束定义
  4. show                      # 调用 show 这个函数显示要输出的内容, 也就是 1 . 这里 等同于 show()
  5. #
  6. alias old_show show   # 给 show 这个函数取一个 old_show 这个别名, 其实可以简单的理解为, 把 show 这个函数里的内容复制一份给 old_show 这个函数
  7. def show                    # 重定义 show 这个函数
  8.    old_show                # 调用 old_show, 由于 alias 的作用, 这里调用的, 其实可以理解成, 第一行定义的那个 show()
  9.    p 2                         # 输出 2 这个数字
  10. end
  11. show                         # 调用 show() 这个函数, 这里输出的是  1, 然后是  2





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1