[英]Xcode 4 warning "Expression result unused” for NSURLConnection
我只是在嘗試進行通常的數據傳輸。 我定義我的NSMutableURLRequest然后調用
[[NSURLConnection alloc] initWithRequest:request delegate:self];
Xcode 3以前可以這樣做,但Xcode 4會警告我該行上的“ 表達式結果未使用 ”。 該請求確實有效,但我想找到一種擺脫警告的方法。
我想我可以存儲在一個變量連接,但我並不真的需要它,我看不出它設置為點nil
下一行(雖然這將消除警告)
請注意:我不是100%知道它是Xcode 4還是啟用了ARC。
當一個函數返回不需要的結果時,可以將其強制轉換為void以消除編譯器警告:
(void) [[NSURLConnection alloc] initWithRequest:request delegate:self];
我還沒有使用過ARC,所以我不能說這是否是個好主意,在ARC之前,您需要將此指針結果保存在某個地方以便可以釋放它。
progrmr的答案是正確的,但這是一種更干凈的方法:
[NSURLConnection connectionWithRequest:request delegate:self];
即使您不將結果強制無效,這也不會引起警告。
有人應對該NSURLConnection
負責。 不需要存儲連接,但是如果需要的話,它是更好的編碼。 問題是,在創建我們的NSURLConnection
沒有人擁有指向所創建實例的指針,事實並非如此。
讓我們假設以下示例:
ClassA
實例正在創建NSURLConnection
實例 ClassA
實例正在釋放並釋放 NSURLConnection
仍然有效,並且將把NSURLConnection
激發到您的已釋放實例。 為了解決該問題,您應該存儲NSURLConnection
實例,並在釋放ClassA
實例時釋放該連接,這也會導致釋放NSURLConnection
實例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.