设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1266|回复: 3
打印 上一主题 下一主题

[已经解决] 什么时候"push"方法不可用?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
49
在线时间
177 小时
注册时间
2011-7-3
帖子
235
跳转到指定楼层
1
发表于 2012-7-7 07:56:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式



其实这个问题已经很古老了,9个月前就有,只不过这个错误在提问之前,就以各种方式“莫名其妙”地解决了

Lv1.梦旅人

梦石
0
星屑
50
在线时间
148 小时
注册时间
2012-7-2
帖子
157
2
发表于 2012-7-7 10:21:50 | 只看该作者
Ruby是弱类型语言,是不是这个对象被意外赋值为其他实例了?
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1409
在线时间
962 小时
注册时间
2012-4-30
帖子
1475

开拓者

3
发表于 2012-7-7 10:52:19 | 只看该作者
本帖最后由 铅笔描绘的思念 于 2012-7-7 10:54 编辑

Array = [1,2,3]
Array << 4
p Array  #[1,2,3,4]
我错了。。

点评

经过实践,这种方法不解决问题 囧...  发表于 2012-7-7 17:27
vx的ruby版本是1.8.。试试push([obj1[, obj2 ...]]) ((<ruby 1.8 特性>))  发表于 2012-7-7 10:55
回复

使用道具 举报

Lv3.寻梦者 (版主)

八宝粥的基叔

梦石
0
星屑
4699
在线时间
5240 小时
注册时间
2009-4-29
帖子
14318

贵宾

4
发表于 2012-7-8 12:32:37 | 只看该作者
看清楚你的错误提示:"for nil:NilCass"。这就表明你push的主体值为空。那么当然push不了。相当于:
  1. a=nil
  2. a.push 4 #显然是不行的,因为a为空值。
复制代码
只有是
  1. a = [1,2,3]
  2. a.push 4 #这样就可以了,因为a是[1,2,3],再push一个4,a就成[1,2,3,4]了
复制代码
LZ检查你脚本push的主体,一定是空值。假如是a,你可以:p a,看看a是不是==nil。
找出你的主体a为nil的原因,再寻求解决的办法,比如:
  1. a = a.push 4 rescue [1,2,3,4]#这样就不报错了,一旦出现错误,a就自动变成[1,2,3,4]
复制代码
《逝去的回忆3:四叶草之梦》真情发布,欢迎点击图片下载试玩喵。

《逝去的回忆3》的讨论群:
一群:192885514
二群:200460747
回复

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-24 09:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表