ios - objective-c 中这两个for循环之间的区别
<p><p>好的,所以我正在构建一个 iOS 游戏,我觉得我对 Objective-c 有很好的掌握,但是让我<strong>吨</strong>痛苦的一件事是引用 -使用以下 for 循环时遇到的错误</p>
<pre><code>for (MyObject *object in nsMutableArrayOfObjects) {
// do things with object
}
</code></pre>
<p>对比</p>
<pre><code>for (int i = 0; i< nsMutableArrayOfObjects.count; i++) {
// do things with nsMutableArrayOfObjects;
}
</code></pre>
<p>我有一些(第一个循环示例)按顺序运行,但我不断收到 <code>EXC_BAD_ACCESS</code> 错误。我也有一些循环嵌套,我会放在另一个里面。我真的很想知道关键的区别是什么。我假设这些差异与它们引用数组中对象的方式有关。</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>您发布的第一个示例使用快速枚举 - 枚举集合的首选方法。<br/>
Apple 在 <a href="https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Collections/Articles/Enumerators.html" rel="noreferrer noopener nofollow">Collections Programming Guide</a> 中提供了详细信息.</p>
<p>我不确定在您的情况下是什么导致了 <code>EXC_BAD_ACCESS</code>(听起来更像是内存管理问题)。但是在使用快速枚举时要记住的一件事是,您不能改变正在枚举的集合。 </p></p>
<p style="font-size: 20px;">关于ios -objective-c 中这两个for循环之间的区别,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/17176834/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/17176834/
</a>
</p>
页:
[1]