Почему большинство блоков используют аргумент для флага продолжения итерации вместо возвращаемого значения?

Для большинства блоков итераций сигнатуры определены примерно так:

void(^)(id obj, BOOL* stop)

Лучше использовать возвращаемое значение для флага остановки.

BOOL(^)(id obj)

Однако я считают, что есть веская причина, побудившая их использовать текущую форму вместо более короткой и удобной. Почему они используют аргумент для флага остановки?

5
задан Eonil 14 July 2011 в 09:25
поделиться