【问题标题】:Retaining objects in game iphone在游戏 iphone 中保留对象
【发布时间】:2010-06-10 20:26:58
【问题描述】:

我正在尝试创建一个游戏,但遇到了一个可能很容易解决的问题。

随着玩家进行游戏,许多物体(车辆)将被添加和移除。

车辆被添加到一个名为 currentVehiclesMutableArray 的数组中。

我的问题是我无法弄清楚如何保留 Vehicle 以便它保留在数组中,直到我完成它。

【问题讨论】:

  • 你是否也保留了 NSArray?

标签: iphone object retain


【解决方案1】:

NSMutableArray 会自动保留您添加到其中的任何内容。

实际上,您必须确保在添加对象后释放它,否则您会发生内存泄漏。

例如:

Vehicle *vehicle = [[Vehicle alloc] init];

[mutableArray addObject:vehicle];

[vehicle release]; // you should release it, because it was retained by the array

// at this point, mutableArray holds your vehicle object, and is retaining it

【讨论】:

  • 好的,谢谢,这就是我已经在做的,但它不起作用。不过,它可能只是出于不同的原因而无法正常工作。当我从数组中删除它时,它会被释放吗?
  • NSMutableArray reference 中说:“当您将对象添加到数组时,该对象会收到保留消息。当从可变数组中删除对象时,它会收到释放消息”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-27
相关资源
最近更新 更多