1
我有這個在我的課標題:我在做什麼這個方法定義和調用錯了?
typedef void(^DBSuccessBlock)();
typedef void(^DBErrorBlock)(int errorNumber, NSString* description);
- (void) connect:(NSString*) path isFile:(BOOL) flag
success:(DBSuccessBlock) success
error:(DBErrorBlock) error;
這是如何我試圖調用方法:
[db connect:filePathName isFile:YES success:^{
// initialize db here if necessary
} error:^(int errorNumber, NSString *description) { //error on this line
NSLog(description);
return nil;
}];
錯誤行給我這個編譯錯誤:不兼容的塊指針類型發送 '無效*(^)(INT,的NSString * _ 強)',以類型的參數 'DBErrorBlock'(又名 '無效(^)(INT,的NSString * _strong)')
唯一的區別我看到是無效的* vs無效,我不是確定爲什麼。任何人都可以幫我弄清楚爲什麼我得到這個錯誤?謝謝。
你是否100%肯定這就是你的'typedef'和方法聲明的樣子? – trojanfoe
我直接從我的文件中複製它。 –