2012-06-29 10 views
0

을 발표 :있는 NSDate 객체를 복사하고 나는이 할 경우

NSDate *dateStart; 
[dateStart alloc]; 

// Initialise with a date somewhere here.. 

.. 

// Modify the start date. 
dateStart = [chosenDate copy]; 

내가 dateStart 포인터를 할당하기 전에 [dateStart 자료를] 일을해야 하는가?

저는 C/C++ 배경에서 왔으며 전체 ObjectiveC/iOS 가비지 수집 동작을 실제로 이해하지 못합니다 (실제로있을 경우). 내 C 배경은 dateStart가 가리키고있는 초기 NSDate 객체를 해제해야한다고 알려주고있다. 그것이 맞을까요?

+2

질문을 완전히 이해할 수 있을지 모르겠지만 ARC를 사용하면 개체를 해제 할 필요가 없습니다. – sridvijay

답변

2

예 당신은 당신이

//Release it before reassign 
[dateStart release]; 
dateStart = [chosenDate copy]; 

는 또한 알이 행하기 전에 해제해야하기 전에 할당하기 때문에 자사 선호하는 당신은, 같은 줄에 할당 및 초기화를 여러 줄에 휴식 해달라고

그래서이

NSDate *dateStart; 
[dateStart alloc]; 

로 변경시겠습니까