얻을 수 55 행에 할당되어 'returnURL'에 저장되는 객체의 누출 가능성 메모리 누수 오류. return
이 실행되지 후iPhone 메모리 누수
내 코드
NSString *returnURL = [[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding];
return returnURL;
[returnURL release];
얻을 수 55 행에 할당되어 'returnURL'에 저장되는 객체의 누출 가능성 메모리 누수 오류. return
이 실행되지 후iPhone 메모리 누수
내 코드
NSString *returnURL = [[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding];
return returnURL;
[returnURL release];
당신이 그것을 반환하기 전에이있는 NSString을 "autorelease를"해야합니다 :
NSString *returnURL = [[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding];
return [returnURL autorelease];
또는 패턴 많은 사용을 단순히의 사이트에서 autorelease를하는 것입니다 사실, 이것은 오토 릴리즈의 고전적인 예이다 ALLOC :
NSString *returnURL = [[[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding] autorelease];
이 기본적으로 당신이 참조를 유지하고 싶지 않은 말을하는지 의미하지만, 당신이 t에 다시 전달할 수 있도록 이벤트 루프의 나머지 부분에 대해 "생존"을 유지하려면 그는 소유주에 대해 걱정하지 않고 사용할 수있는 방법의 호출자입니다.
고맙습니다. – HardCode
이것은 자동 릴리스를 사용하는 상황입니다. – Joe