Блоки Objective-C и переменная область
Я хотел бы установить значениеNSData
объект в моем блоке. Может кто-нибудь дать мне знать, что я здесь сделал неправильно?
// Data
__block NSData *data = nil;
[ZSURLConnection performRequestWithUrl:wsdlURL xmlString:xml completionHandler:^(NSData *response, NSError *error) {
// Handle the error
if (error) {
NSLog(@"Error: %@", [error localizedDescription]);
} else {
data = response;
}//end
}];//end block
if (data) {
NSString *d = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];
NSLog(@"DATA --- %@", d);
}
return data;
Почему я не могу назначить ответdata
и затем получить его за пределами моего блока?