查看: 1562|回复: 2

RGSS2中有关alias用法的一个问题

  [复制链接]
梦石
0
星屑
55
在线时间
3 小时
注册时间
2009-4-7
回帖
26
发表于 2009-4-9 00:09:00 | 显示全部楼层 |阅读模式

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

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

×
我最近在尽力阅读KGC的那个多人队伍的脚本,发现这里有关alias(别名)的用法不容易理解,想请教一下各位大大。具体的问题如下:

在脚本中出现了很多诸如这样的定义:
      alias display_level_up_KGC_LargeParty display_level_up
      def display_level_up
          ......
          display_level_up_KGC_LargeParty
          ......(具体的代码我就省略啦{/cy})
      end
我发现,display_level_up_KGC_LargeParty,这个方法在整个脚本中完全没有出现过,这样的使用有什么特别的用意吗?而且对于功能来说没有什么影响吗?
希望哪位高手帮我解决一下这个问题,非常感谢{/wx}

附:类似于这样的定义非常常见的,比如:
      alias oldinitialize  initialize
      def initialize
          ......
          oldinitialize
      end
版务信息:本贴由楼主自主结贴~
目前还是新手,但迟早不是

神隐的主犯

梦石
0
星屑
553
在线时间
271 小时
注册时间
2008-2-22
回帖
7534

贵宾

发表于 2009-4-9 01:45:07 | 显示全部楼层
方法在定义的时候,为了避免和原来方法冲突,就可以使用 alisa

例如:

class A
  def abc
   p 1
  end
end

使用 alisa 添加属性:

class A
   alisa old_abc abc
   def abc
     old_abc
     p 2
   end
end

调用的时候就会发现

a = A.new

输出的是  1 和 2.

说明 old_abc 是原来方法的拷贝,就是说:

class A
   alisa old_abc abc
   def abc
     old_abc
     p 2
   end
end

等价于

class A
   def abc
     p 1
     p 2
   end
end
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~

《天空之城 —— 破碎的命运》
回复

使用道具 举报

梦石
0
星屑
55
在线时间
3 小时
注册时间
2009-4-7
回帖
26
 楼主| 发表于 2009-4-9 02:09:48 | 显示全部楼层
非常感谢啦{/qiang}

代码这东西还是要点实践精神的,对于我这个新入行的人来说,CP制和多人队伍的整合就够头疼的了{/pz}
目前还是新手,但迟早不是
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部