我已经为JSON服务定义了一个回调块,如下所示:
#import "JSONResult.h"
typedef void (^JSONResultHandler)(JSONResult*);
显然,JSONResult类型的参数是自定义类型,并且其头文件包含在定义此块的位置。为什么会出现以下错误?
/Users/oyvind/code/_objc/JSONService.h:22:35: Unknown type name 'JSONResult'
最佳答案
您是否也在JSONResult
中导入JSON服务类?也许您有一个循环参考问题。
如果要在JSONResult
中导入JSON服务类,并且绝对需要导入,请尝试使用正向声明在.h中导入JSONResult:
@class JSONResult;
@interface SomeJSONService : NSObject
typedef void (^JSONResultHandler)(JSONResult*);
@end
仔细检查您的导入,类名也可以。
关于objective-c - 如何在块中使用自定义类型的参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12974149/