查看: 1710|回复: 1

[已经解决] 谁帮我解析一下这个脚本

[复制链接]
梦石
0
星屑
214
在线时间
66 小时
注册时间
2014-1-23
回帖
31
发表于 2014-2-24 22:07:24 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
  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怎么替代原函数了?
      

狂気の月兔

梦石
0
星屑
421
在线时间
1245 小时
注册时间
2009-4-7
回帖
866

贵宾

发表于 2014-2-24 22:48:28 | 显示全部楼层
[pre lang="ruby" line="1"]
def show                 # 定义一个名叫 show 的方法 or 函数
   p 1                       # 输出 1 这个数字
end                         # 结束定义
show                      # 调用 show 这个函数显示要输出的内容, 也就是 1 . 这里 等同于 show()
#
alias old_show show   # 给 show 这个函数取一个 old_show 这个别名, 其实可以简单的理解为, 把 show 这个函数里的内容复制一份给 old_show 这个函数
def show                    # 重定义 show 这个函数
   old_show                # 调用 old_show, 由于 alias 的作用, 这里调用的, 其实可以理解成, 第一行定义的那个 show()
   p 2                         # 输出 2 这个数字
end
show                         # 调用 show() 这个函数, 这里输出的是  1, 然后是  2
[/pre]

点评

谢谢,有些明白了  发表于 2014-2-25 08:42

评分

参与人数 2星屑 +200 收起 理由
Password + 25 精品文章
怪蜀黍 + 175 注解过于详尽

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部