вернуть указатель на блок - PullRequest
1 голос
/ 07 декабря 2011

У меня есть статическая переменная блока внутри класса.Как я могу объявить свойство или селектор экземпляров для возврата или отправки этого блока вызывающей стороне?

Это мой статический блок:

static NSResultComparison(^myBlock)(id obj1, id obj2);

1 Ответ

5 голосов
/ 08 декабря 2011

Было бы лучше typedef ваш блок.

//interface.h
typedef NSResultComparison (^ComparisonBlock)(id obj1, id obj2);

@interface ...
...

-(ComparisonBlock) getComparisonBlock;

@end

//implementation.m
//Here is your static block implementation
static ComparisonBlock myStaticBlock = ^(id obj1, id obj2)
{
    ...
    return result;
};

@implementation ...

-(ComparisonBlock)getComparisonBlock
{
    return myStaticBlock;
}

@end
...