我有一個簡單的Blocks和typedef疑問。 考慮下面的代碼,我有一些typedef和兩個方法,第二個被註釋掉。我懷疑是關於第一個。我應該使用這個嗎?任何問題或未來可能出現的問題?typedef in cocoa blocks
typedef void (^MySuccessBlock)(MyServiceResponse *response);
typedef void (^MyFailureBlock)(NSError *errorObject);
@property (nonatomic, copy)MySuccessBlock mySuccessBlock;
@property (nonatomic, copy)MyFailureBlock myFailureBlock;
//SHOULD I USE THIS?
- (void)myServiceWithCompletion:mySuccessBlock
failure:myFailureBlock;
//- (void)myServiceWithCompletion:(void (^)(MyServiceResponse *response))completion
// failure:(void (^)(NSError *errorObject))failure;
在實現文件:
//If 1st one is used:
- (void)myServiceWithCompletion:aSuccessBlock
failure:aFailureBlock{
self.mySuccessBlock = aSuccessBlock;
self.myFailureBlock = aFailureBlock;
....
}
你如何傳遞的財產,以這樣的 – Sandeep
@Anoop它完全沒有使用此方法的定義,我們在很多地方,我們沒有遇到任何問題,都用這個。 – GoodSp33d
它看起來可以使用,它只是用戶定義的命名約定。它在內部只會在真正的塊定義中進行轉換。 – Mrunal