赞 | 40 |
VIP | 559 |
好人卡 | 234 |
积分 | 47 |
经验 | 251834 |
最后登录 | 2025-1-5 |
在线时间 | 5242 小时 |
Lv3.寻梦者 (版主) 八宝粥的基叔
- 梦石
- 0
- 星屑
- 4719
- 在线时间
- 5242 小时
- 注册时间
- 2009-4-29
- 帖子
- 14318
|
hys111111 发表于 2012-9-3 22:44
因为变量可以使用$game_variables[2]="字符串"的。
而那个变量,我希望当它是数字时,进行加、减法、大于 ...
虽然P叔不是XP党的,但是我也想参与讨论一下。
a.is_a?(String)并不一定a是数值,也有可能一数组(Array)或者是其他
这里推荐一个rescue的方法吧,是防止弹框出错的妙招。
比如说定义带参数c的方法foo:- def foo(c)
- if c.is_a?(String) #若c是字符串,那么令c等于0
- c = 0
- end
- b = c * 2
- return b
- end
复制代码 这样做,如果c是字符串或者数字都没事,但是如果c是一个数组那肯定是要弹窗报错的。
于是我们有一个万能的办法,只要报错就怎么怎么样,那就是利用rescue:- def foo(c)
- b = c * 2 rescue 0 #不报错就执行b = c * 2,报错就令b等于0
- return b
- end
复制代码 利用rescue可以有效地对付弹窗类错误。
VX党首次来XP区讨论,若是有什么不对的地方,请大家指正。
|
评分
-
查看全部评分
|