사용되는 입력과 함께 메소드를 보유해야합니까?인수로받는 물건을 보관해야합니까?
- (void) exampleMethod: (NSString *)input {
self.hey = [input retain];
}
두 번 이상 input
을 사용하면 어떻게됩니까?
사용되는 입력과 함께 메소드를 보유해야합니까?인수로받는 물건을 보관해야합니까?
- (void) exampleMethod: (NSString *)input {
self.hey = [input retain];
}
두 번 이상 input
을 사용하면 어떻게됩니까?
Memory Management Rules을 읽으십시오. hey
이 retain
또는 copy
속성이 설정된 속성 인 경우 -retain
을 호출 할 필요가 없습니다 (self.hey = input
만 가능).
메서드 중에 만 사용하려는 매개 변수를 유지할 필요가 없습니다. 당신이 당신의 예에서와 같이 더 오랫동안 그것에 대한 참조를 유지하려고한다면, 대부분의 경우 당신은해야합니다.
그러나 여기에있는 것으로 보이는 속성을 사용하는 경우 setter를 호출 할 때 명시 적으로 retain을 호출하지 말고 속성 setter 자체 내에서 메모리를 관리해야합니다.
이 경우 .hey 속성에 대한 retain은 접근 자 메서드에 포함됩니다. 당신이 접근 방법을 사용하지 않고 문자열을 계속 사용하려면
, 당신은 문자열 및 사용할 수있는 데 필요한있는 범위를 유지해야합니다.