왜 다음 코드가 충돌합니까? 주석 처리 된 코드는 충돌하지 않습니다.Objective-C에서 보유 속성이 유지되지 않는 이유는 무엇입니까?
@property (retain) NSDate *lastCurrentDate;
...
@synthesize lastCurrentDate;
- (void)viewWillAppear:(BOOL)animated {
BOOL crash = [lastCurrentDate isEqualToDate:[NSDate date]]);
}
- (void)viewDidDisappear:(BOOL)animated {
//lastCurrentDate = [[NSDate date] retain];
lastCurrentDate = [NSDate date];
}
그렇다면 왜 소유권이 Objective-C에 유지되지 않을 수 있습니까?
충돌 오류를 신고 할 수 있습니까? – LuckyStarr
내 끝에서 똑같은 것을 시도했지만 충돌이 발생하지 않습니다. 여기에 표시된 코드에 누락 된 것이 있습니까? 누락 된 것이 있으면 업데이트 해 주시면 감사하겠습니다. 그렇지 않으면 충돌 오류로 더 잘 업데이트 할 수 있습니다. –
아직 초기화되지 않았기 때문에 isEqualToDate 메시지를 보낼 때 변수가 null이기 때문에 충돌이 발생한다고 생각합니다. viewDidDisAppear 메서드에서 변수를 초기화하는 중 오류입니다. – LuckyStarr