2011-12-19 2 views

답변

2

당신은 이미 아이폰 OS 코드에 대한 차이

을 지적했습니다, 그것은 사용 ALLOC를 사용하는 것이 가장 좋습니다/초기화 오히려 당신이 그들을 사용하여 수행 한 후 그들은 주위에 체재하고있는 방법에 대한이 없기 때문에 편리 자동 해제 기능 이상 당신이 그들을 풀어주기 위해서

언제 release 할지를 알 수 없을 때 autorelease를 사용한다. (다른 곳에서 유지되지 않는 객체를 반환 할 때와 같이) 가장 가까운 autorelease 풀은 다음에 풀이있을 때 메모리를 비울 것이다. 배수구.

alloc/init을 사용하는 경우 release를 호출해야합니다. 그렇지 않으면 메모리에 남아 있습니다.

0

나는 당신이 유일한 차이점을 지적했다고 생각합니다. 대표 :

내가 + connectionWithRequest 사용

내가 실패 또는 init 시작 목표 - C에서

1

모든 방법을 완료 할 때까지 내부 뭔가 연결을 유지 생각하는 방법을 필요로 후에 만 ​​호출 할 수 alloc 방법. 또한 init-method는 autoreleased가 아닌 객체를 반환합니다.

모든 예를 들어, 클래스 이름과 유사한 이름에서 시작 방법, [NSString string], [NSArray array] 및 다른 autoreleased 객체를 반환하고 alloc 방법을 precalled 필요하지 않습니다.

질문에 다시 돌아 오기 : alloc + initWithRequest:delegate: 또는 connectionWithRequest:delegate:과 같은 접근 방법을 사용할 수 있지만 첫 번째 경우는 release 개체 여야합니다.