Вы должны опустить скобки вокруг NSArray *
в определении ивара:
@interface SSTaskStrategy : NSObject {
NSArray * (^strategy)(void);
}
@end
Кроме того, я настоятельно рекомендую вам использовать typedef
для большей ясности:
typedef NSArray * (^Strategy)(void);
@interface SSTaskStrategy : NSObject {
Strategy block;
}
@end
Это позволяет вам ссылаться на этот блок с именем Strategy
вместо необходимости использовать фанки-синтаксис каждый раз, когда вы хотите сослаться на него.