Project1
标题:
什麼是nil?
[打印本页]
作者:
熊喵酱
时间:
2013-3-28 11:14
标题:
什麼是nil?
本帖最后由 76213585 于 2013-3-27 21:31 编辑
nil是什麼意思我還是一直不懂.....
nil:Class又是什麼意思....
腳本盲..
作者:
怪蜀黍
时间:
2013-3-28 12:07
nil就是空,所有的变量在没有赋值之前都是nil。这里的变量不是指$game_variables这些,而是任意变量如$abc、@abc、@@abc、abc等。它们的初始值都是nil。出现你那样的报错是最常见的报错了,是执行某个方法的主体值为nil。比如
for i in 0..10
$game_troop.members[i].hp+=1
end
复制代码
让1-11号敌人的HP都加1,但敌人最多就是8个,没有11个敌人,因此当执行到第9个敌人时,$game_troop.members[8]就是nil,nil不具有hp属性,无法执行hp+=1,于是报错。所以只要
$game_troop.members[i].hp+=1 unless $game_troop.members[i].nil?
复制代码
在不为空的时候才执行hp+=1,就不报错了。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1