如果我们在带有NSLogs的设备上运行该应用程序,则可能会在一定程度上减慢该应用程序的速度。

在内存方面,NSAssert的行为与NSLog相同吗?

任何意见或建议,将不胜感激。

先感谢您。

最佳答案

也许这会回答您的问题


  请注意,从Xcode 4.2开始,断言已关闭
  默认情况下,对于发布版本,这是通过定义
  NS_BLOCK_ASSERTIONS宏。也就是说,在编译发布时,
  致电NSAssert&co。被有效删除。


资料来源:http://nshipster.com/nsassertionhandler/

如果您将它们保持启用状态,那么是的,它们是有代价的(显然需要评估),并且取决于您执行它们的代码不同。对于简单的零比较,可以忽略不计。

有关更多参考,请参见:http://www.mikeash.com/pyblog/friday-qa-2013-05-03-proper-use-of-asserts.html

具体来说这段话


  运行时成本应该可以忽略不计,如果不是,那么您应该重做断言以解决该问题。

关于ios - NSAssert会占用iOS设备上的任何内存吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20497581/

10-10 01:11