Мой вопрос: при выполнении цикла for компилятор считывает его один раз, а затем начинает выполнять циклы с сохраненными значениями? Или это оценивает условие многократно, поскольку цикл выполняется? Например, скажем, у меня есть NSMutableArray
с именем myArray
. Мой цикл for выглядит примерно так:
for (int i = 0; i < [myArray count]; i++){
[myArray addObject: object]; // this has maybe a 25% chance of happening
[myArray removeObjectAtIndex: whatever]; // also has a smaller chance of happening
Я хочу, чтобы, если объект был удален, условие было переоценено, чтобы цикл for не пытался что-либо делать с объектами массива, которых не существует, но я не хочу, чтобы его добавляли в счет, потому что если он это сделает, цикл for никогда не закончится, так как он будет продолжать добавлять объекты, которые добавляют больше объектов и т. д.