Каков синтаксис для создания локальной (выделенной в стеке) ссылки на блок в Objective-C? - PullRequest
1 голос
/ 02 января 2012

Я хотел бы создать локальную ссылку на блок, который будет обрабатываться по-разному в зависимости от контекста выполнения.Обычно я определяю специальный тип блока и назначаю блок этому типу, но это скорее единичная ситуация и на самом деле не заслуживает специального объявления типа.Каков синтаксис для создания локальной ссылки на блок без использования определения пользовательского типа?

1 Ответ

3 голосов
/ 02 января 2012

Используйте тот же общий синтаксис, который использовался при определении пользовательского типа для блока, например:

void (^myLocalBlock)(void) = ^{ printf("Buy low, sell high.\n"); };
myLocalBlock();
dispatch_sync(dispatch_get_main_queue(), myLocalBlock);
dispatch_async(dispatch_get_main_queue(), myLocalBlock);

Для получения дополнительной информации о синтаксисе объявления блока см .:

http://thirdcog.eu/pwcblocks/

...