3

以下のコードで、「NSURLResponse*」から「NSHTTPURLResponse*」に割り当てられている互換性のないポインタタイプの警告が表示されます。このメソッドはSharekitの一部です。

警告のある行は、太字/斜体の行です。

    - (void)connection:(NSURLConnection *)aConnection didReceiveResponse:(NSURLResponse *)aResponse
{
    if (response)
        [response release];
    ***response = [aResponse retain];***
    [responseData setLength:0];
}

誰か助けてください!

ありがとう!

4

1 に答える 1

7

コンパイラにとってaResponse、および の結果は[aResponse retain]NSURLResponse です。しかし、私はresponseNSHTTPURLResponse だと思います。NSURLResponse は NSHTTPURLResponse のスーパークラスであるため、直接割り当てることはできませんが、キャストを使用して警告を削除できます。

response = (NSHTTPURLResponse *)[aResponse retain];
于 2011-08-09T23:07:24.877 に答える