Jas*_*orn 11 objective-c nsurlconnection automatic-ref-counting
我开始玩ARC了,我尝试的第一个体验之一是对URL进行HTTP调用并获取一些数据.当然,HTTP状态代码对我来说很重要,所以这意味着我去了我使用的"goto" sendSynchronousRequest:
NSError *error = [[NSError alloc] init];
NSHTTPURLResponse *responseCode = nil;
NSData *oResponseData = [NSURLConnection sendSynchronousRequest:request returningResponse:responseCode error:error];
Run Code Online (Sandbox Code Playgroud)
启用ARC后,我在最后一行收到编译器错误和警告.
错误:
使用ARC不允许将Objective-C指针隐式转换为'NSURLResponse*__ autoreleasing*'
使用ARC不允许将Objective-C指针隐式转换为'NSError*__ autoreleasing*'
file://localhost/Users/jason/Projects/test/Data/DataService.m:错误:自动引用计数问题:ARC不允许将Objective-C指针隐式转换为'NSURLResponse*__ autoreleasing*'
file://localhost/Users/jason/Projects/test/Data/DataService.m:错误:自动引用计数问题:ARC不允许将Objective-C指针隐式转换为'NSError*__ autoreleasing*'
警告:
不兼容的指针类型将'NSHTTPURLResponse*_ strong'发送到'NSURLResponse* _autoreleasing*' 类型的参数
不兼容的指针类型将'NSError*_ strong'发送到'NSError* _autoreleasing*' 类型的参数
从我可以告诉参考传递是什么搞乱了这一点,但我不确定解决这个问题的正确方法是什么.是否有一种"更好"的方式来完成ARC的类似任务?
Car*_*rlJ 23
NSError *error = nil;
NSHTTPURLResponse *responseCode = nil;
NSURLRequest *request;
NSData *oResponseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&responseCode error:&error];
Run Code Online (Sandbox Code Playgroud)
你错过了对error/responceCode指针的引用!
| 归档时间: |
|
| 查看次数: |
14820 次 |
| 最近记录: |