Project1

标题: [求教]关于alias。 [打印本页]

作者: 永劫的咎人    时间: 2007-8-19 00:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: 永劫的咎人    时间: 2007-8-19 00:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: kaze    时间: 2007-8-19 00:42
alias
例子:

alias foo bar
alias :foo :bar

语法:

alias 新方法名 旧方法名

给方法或全局变量添加别名。可以给方法名指定一个标识符或 Symbol(不能写 obj.method 这样的表达式)。 alias 的参数不会被计算。

给方法添加别名时,别名方法将继承此刻的原始方法。此后,即使原始方法被重新定义,别名方法仍然保持着重定义前的老方法的特性。若您改变了某方法的内容后,又想使用修改前的方法时,别名会非常有用。
# 定义 foo 方法
def foo
  "foo"
end

# 设定别名(避开方法定义)
alias :_orig_foo :foo

# 再定义 foo(利用以前的定义)
def foo
  _orig_foo * 2
end

p foo  # => "foofoo"

alias 表达式返回 nil。

以上摘自神奇的F1
作者: 弗洛多    时间: 2007-8-19 01:00
提示: 作者被禁止或删除 内容自动屏蔽
作者: 索尔迦·蓝    时间: 2007-8-20 05:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: 永劫的咎人    时间: 2007-8-20 20:46
提示: 作者被禁止或删除 内容自动屏蔽




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