Что именно делает «foo = (foo + 1)% bar»? - PullRequest
1 голос
/ 03 мая 2010

Из аудио библиотеки Finch:

- (void) play
{
    [[sounds objectAtIndex:current] play];
    current = (current + 1) % [sounds count]; // this line here...
}

Я пытаюсь это уловить: количество звуков n , и current увеличивается на 1 на каждой итерации. Как только current превышает количество звуков n , модуль возвращает ноль. Таким образом, это начинается с самого начала.

Это правильно?

1 Ответ

8 голосов
/ 03 мая 2010

Да, все верно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...