웹을 통해 검색하고 많은 게시물을 읽었지 만 아직 정확하게 어떻게 작동하는지 설명하지 못했습니다.메모리 관리에서 반환 값을 autorelease 할 때
-(MyClass*)findRandomName { return [[[MyClass alloc] initWithString:@"Something"] autorelease]; }
내 질문은, 나는 또한에 오토 릴리즈 호출해야합니다 : 나는 규칙이 어떤 방법 (ALLOC, 새를 제외하고 복사 mutableCopy)는 오토 릴리즈 객체를 반환 그래서 이런 일이 괜찮해야한다고 말한다 것을 알고있다 편리한 방법이나 비슷한 것을 사용한다면 반환 값은? 여기에 좋아요 :
-(MyClass*)findRandomName { return [[MyClass startFromString:@"Something"] autorelease]; }
왜, 또는 왜? 고맙습니다. 이 두 번째 예를 들어 당신이해야 하지autorelease
개체에서 :, initWithString
를 호출하기 전에
-(MyClass*)findRandomName {
return [[[MyClass alloc] initWithString:@"Something"] autorelease];
}
을 예컨대을 [MyClass alloc]
를 호출해야합니다으로
첫 번째 코드 줄에서 'alloc'은 어디에서 호출 되었습니까? – rmaddy
아, 깜박 했네. – ArniDat