Project1
标题:
我对alias的理解,不知道对否?
[打印本页]
作者:
kvkv97
时间:
2022-7-28 23:16
标题:
我对alias的理解,不知道对否?
class G
def iu
@m = "a"
end
end
class G
alias old_i iu
def iu
old_i
@mercenaries = {}
end
end
g=G.new
p g.iu 显示{}
p g.old_i 显示"a"
根据上面P出来的结果,我认为alias后面的old_i是老方法的名字,iu是新方法的名字?不知道对否,请高手校对下。
作者:
纯属小虫
时间:
2022-7-29 11:25
本帖最后由 纯属小虫 于 2022-7-29 11:31 编辑
class G
def iu
p a
end
end
class G
alias old_i iu
def iu
old_i
p b
end
end
g=G.new
g.iu >>>>>> a ; b
g.old_i >>>>>> a
我理解的(猜测哦,经验之谈,非理论)
alias A B
就是以 A(新名字)为函数名, 复制一个相同的 函数 B(旧名字)
如果不重新定义B的话
A B效果应该是一样的
这是一种比较常见的给某个函数添加补充的方法
def B
***** ————原来定义的内容
end
alias A B
def B
A ————原来定义的内容
***** ————新添加的定义的内容
end
一般出现了alias A B,后头紧跟 def B,且def B 里含有A的情况,通常是给定义B【添加内容】的时候常用的方式
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1