查看: 1887|回复: 3

[已经解决] 请问定义方法与直接用方法有什么区别?

  [复制链接]
梦石
0
星屑
50
在线时间
24 小时
注册时间
2007-2-9
回帖
292
发表于 2009-8-19 22:51:10 | 显示全部楼层 |阅读模式

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

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

×
就是雪流星的这段看不懂……
有没有注意到,取消的时候,也是调用return_scene这个方法。那又如何?还不是只有一句脚本而已?有什麽差别? 差别就是:现在我们的脚本虽然只有调用了这句脚本两次,但是假如有一天,我们的脚本变成了「裹脚布」(又臭又长)的时候每次要回去菜单画面就要打一次$scene = Scene_Menu.new(5) 然後我们在菜单的命令窗口又增加了新的选项,於是「离开游戏」就往下掉,我们就要把所有的 $scene = Scene_Menu.new(5)改成$scene = Scene_Menu.new(6) 然後我们在菜单的命令窗口又增加了新的选项,於是「离开游戏」就又往下掉,我们又要把所有的 $scene = Scene_Menu.new(6)改成$scene = Scene_Menu.new(7) …………………..重复n次结果可以想像了吧….
梦石
0
星屑
50
在线时间
24 小时
注册时间
2007-2-9
回帖
292
 楼主| 发表于 2009-8-19 23:03:40 | 显示全部楼层

关于Scene_Menu的问题

就是雪流星的这段看不懂……
有没有注意到,取消的时候,也是调用return_scene这个方法。那又如何?还不是只有一句脚本而已?有什麽差别? 差别就是:现在我们的脚本虽然只有调用了这句脚本两次,但是假如有一天, ...
DemonPanda 发表于 2009-8-19 22:51
回复

使用道具 举报

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
回帖
1912
发表于 2009-8-19 23:15:08 | 显示全部楼层
意思是说,把 $scene = Scene_Menu.new(n) 的操作定义在 return_scene 中,当你需要修改 n 的值的时候,只需要修改 return_scene 中的定义就行了,一劳永逸~
而如果不调用 return_scene,每次都直接执行 $scene = Scene_Menu.new(n) 的话,一旦 n 的值需要修改,就需要找到所有执行这一行的地方,并修改 n 的值,很明显这将降低编程的效率~

我们写程序时会经常定义常量或者宏,然后在程序的多处都用到了这个常量/宏的值,之后如果需要修改这个常量的值,只需要改定义常量的地方即可,而不需要找到所有用到这个常量的地方去一一修改,这也和上面提到的方法定义同理
回复

使用道具 举报

梦石
0
星屑
50
在线时间
24 小时
注册时间
2007-2-9
回帖
292
 楼主| 发表于 2009-8-20 18:46:03 | 显示全部楼层
哦,我突然明白咧,谢紫苏大大喔~
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部