가능한 중복 : 나는 몇 가지 질문을 가지고 Why do weak NSString properties not get released in iOS? 내가 목표 C에 안돼서 그 I 나 자신에게 대답 할 수 없다. 2013-01-02 11:42:27.481 ConsoleApp[836:303] string: (null)
: weakString 약한 변수이기 때
나는 강한 참고를 더 잘 이해하려고 노력하고 있지만, 구체적인 예를 들어 아래에 열거합니다. gPrefs라는 전역 변수가 있다고 가정 해 보겠습니다. 그것은 제가 선호하는 클래스 인 Preference Class입니다. 나는 다음의 인터페이스에 선언 한 ... @property (strong) NSURL *masterFolder;
이것은 NSURL
ARC 옵션이 활성화 된 iPhone 앱을 개발 중입니다. 파일 소유자 아이콘에서 .xib 요소에 연결된 .h 파일로 IBOutlets를 만듭니다. 예를 들어. 하는 .m 파일에 IBOutlet UIButton *bt;
@property(nonatomic,retain)IBOutlet UIButton *bt;
, 내가 @synthesize bt;
에
WeakReference의 대상이 강력한 참조라고 가정합니다. GC가 대상 개체 자체를 수집하는시기를 알려주고 싶습니다. 가능한가? 편집 : finalizer/destructor에 코드를 추가하는 것은 여기에 옵션이 아닙니다. 클래스 코드에 의존하지 않는 무언가가 필요합니다.
내 프로젝트에서 나는 Interface Builder를 사용하지 않고 설명하는 방법을 모르는 한 가지를 발견했습니다. 아직. 그래서 요점까지. 우리가 IB를 사용하고 우리 컨트롤러의 UILabel이나 UIButton과 같은 사용자 인터페이스 요소를 정의 할 때 우리는이 못 생기는 접두어 IBOutlet과 'weak'수정자를 사용합니다. 이것은 음악처럼 작동