우리가 종종 ab 객체를 릴리즈 할 때 우리는 즉시 그것을 nil로 설정합니다. 저는 release와 nil이 모두 객체와 연관된 이전 값을 해제한다는 것을 알고 있습니다. 그러나 release의 경우 객체를 매달려있는 포인터로 남겨 둡니다. 그래서 우리는 그것을 nil로 설정해야합니다.왜 우리가 출시해야합니까?
제 질문은 nil이 객체의 이전 값을 해제하고 객체를 nil으로 설정하면 왜 n이 사용되지 않아야 만하는지 w가 release를 사용해야하는 이유입니다.
Way1 :
MyClass *obj = [[MyClass alloc] init];
[obj release];
obj = nil;
Way2 : 사용 way1 이유는 단지 way2를 사용하지 않는 경우
MyClass *obj = [[MyClass alloc] init];
obj = nil;
way1 및 way2의 실제 차이점은 무엇입니까?
좋은 질문 ... 주목할만한 예외가 여기에있다 – tek3