Xcode 4.2로 첫 번째 iOS 앱을 개발하기 시작했고 "유틸리티 애플리케이션"템플릿 (FlipsideViewController와 함께 제공되는 템플릿)으로 iOS 5.0을 대상으로했습니다.
ARC는 컴파일 타임 기능이기 때문에 iOS 4 와도 호환되어야한다고 읽었으므로 앱을 4.3으로 타겟팅하고 컴파일을 시도했습니다. 이렇게하면 다음 오류가 발생합니다.
FlipsideViewController.m : 오류 : 자동 참조 계산 문제 : 현재 배포 대상이 자동화 된 __weak 참조를 지원하지 않습니다.
다음 줄을 참조하고 있습니다.
@synthesize delegate = _delegate;
해당 변수는 다음과 같이 선언됩니다.
@property (weak, nonatomic) IBOutlet id <FlipsideViewControllerDelegate> delegate;
나는 "약한 참조"가 iOS 4에서 지원되지 않는다는 것을 알고 있지만, 왜 약한 참조를 사용하여 시작해야하는지 이해하지 못하며 사용을 피하기 위해 재 작성하는 방법을 알아낼 수 없습니다. 여전히 ARC를 활용하고 있습니다 (결국 iOS 4 및 5에서 작동해야합니다).