在下面的代码中,我从'NSURLResponse *'得到了警告,将不兼容的指针类型分配给'NSHTTPURLResponse *'。此方法是Sharekit的一部分。
带有警告的行是粗体/斜体:
- (void)connection:(NSURLConnection *)aConnection didReceiveResponse:(NSURLResponse *)aResponse
{
if (response)
[response release];
***response = [aResponse retain];***
[responseData setLength:0];
}
有人请帮忙!
谢谢!
最佳答案
对于编译器来说,aResponse
和[aResponse retain]
的结果是NSURLResponse。但是我猜response
是一个NSHTTPURLResponse。由于NSURLResponse是NSHTTPURLResponse的超类,因此您不仅可以直接进行分配,还可以使用强制类型转换来删除警告:
response = (NSHTTPURLResponse *)[aResponse retain];
关于ios - 从“NSURLResponse *”分配给“NSHTTPURLResponse *”的指针类型不兼容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7004083/