programing

NSURL 연결에 대해 Xcode 4 경고 "식 결과가 사용되지 않음"

telebox 2023. 9. 9. 09:27
반응형

NSURL 연결에 대해 Xcode 4 경고 "식 결과가 사용되지 않음"

평소에 하던 데이터 전송을 하려고 할 뿐입니다.NSM 가변 테이블을 정의합니다.URL 요청 후 호출

[[NSURLConnection alloc] initWithRequest:request delegate:self];

Xcode 3에서는 괜찮았지만 Xcode 4에서는 해당 라인의 "Expression result used"에 대해 경고합니다.요청은 가능하지만 경고를 없앨 수 있는 방법을 찾고 싶습니다.

연결을 변수에 저장할 수 있을 것 같은데 필요가 별로 없고 설정할 지점을 알 수가 없습니다.nil다음 줄(경고가 제거되지만)

참고:Xcode 4인지, ARC가 활성화되어 있는지 100% 확신할 수 없습니다.

함수가 필요 없는 결과를 반환하면 컴파일러 경고를 제거하기 위해 이 결과를 무효화할 수 있습니다.

(void) [[NSURLConnection alloc] initWithRequest:request delegate:self];

저는 아직 ARC를 사용해 본 적이 없어서 이게 좋은 생각인지 말할 수 없습니다. ARC 전에 이 포인터 결과를 어딘가에 보관해야 해제할 수 있습니다.

programmr의 대답은 맞지만, 이를 위한 더 깨끗한 방법이 있습니다.

[NSURLConnection connectionWithRequest:request delegate:self];

결과를 무효로 만들지 않더라도 경고가 발생하지 않습니다.

누군가가 그 책임을 져야 합니다.NSURLConnection. 연결을 저장할 필요는 없지만 저장한다면 코딩이 더 좋습니다.문제는 당신이 우리의 것을 만든 후에NSURLConnection아무도 생성된 인스턴스에 대한 포인터를 가지고 있지 않으며 이는 해당 인스턴스에 해당되지 않습니다.

다음과 같은 예를 가정해 보겠습니다.

  1. 당신의 예.ClassA다음의 인스테인을 만들고 있습니다.NSURLConnection
  2. 당신의 예.ClassA지금 석방되고 있는 중입니다
  3. NSURLConnection아직 살아있고 할당 해제된 인스턴스에 대한 대리인을 해고할 것입니다.

그 문제를 해결하려면 다음의 인스턴스를 저장해야 합니다.NSURLConnection그리고 만약 당신의 사례가 당신의 경우에 그 연결을 해제해야 합니다.ClassA할당 해제 중이며, 이로 인해 해당 인스턴스의 할당이 해제됩니다.NSURLConnection뿐만 아니라.

언급URL : https://stackoverflow.com/questions/7914990/xcode-4-warning-expression-result-unused-for-nsurlconnection

반응형