假设我有这个cat类,并且制作了2个实例。我要猫能互相攻击
class ninjaCat {
var health : Double = 100.00
var attack = Double()
init(attack : Double){
self.attack = attack
}
func thunderClaw(otherCat : ninjaCat){
health = otherCat.health
otherCat.health = health - self.attack
}
}
var NinjaCat1 = ninjaCat(10.60)
var NinjaCat2 = ninjaCat(20.15)
NinjaCat1.thunderClaw(NinjaCat2)
是否可以将类对象作为函数参数传递?
确实有可能。但是,您应该在此处检查代码,因为您使用攻击猫的当前寿命而不是目标来计算剩余寿命:
func thunderClaw(otherCat : ninjaCat){
otherCat.health = health - self.attack
}
应该
func thunderClaw(otherCat : ninjaCat){
otherCat.health = otherCat.health - self.attack
}
或简单地
func thunderClaw(otherCat : ninjaCat){
otherCat.health -= self.attack
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句