外我發現了一個錯誤分配塊內的變量的變量塊
變量不可分配(缺少__block類型說明符)
。我怎樣才能確保塊可以訪問變量aPerson
變量和aPerson
變量可以返回?
Person *aPerson = nil;
[participants enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
Person *participant = (Person*)obj;
if ([participant.gender isEqualToString:@"M"]) {
aPerson = participant;
*stop = YES;
}
}];
return aPerson;
請注意,'__block'前綴爲**兩個**下劃線。 –
使用'__block'我的錯誤消失了,但是值並沒有被擋住。這裏的任何幫助 – User16119012
塊被稱爲它應該被調用的地方,換句話說,塊不會立即運行。 –