2011-10-14 11 views
9

, ben aşağıdaki biçimde bir ilan özelliği vardır:(güçlü) beyan ettiğim mülkün sırtımın arkasında niye dönüşmesine sebep olur? ARC Kullanma

@property (nonatomic, strong) MyClass * instanceName; 

Ben üç yerde bu özelliğini ayarlayın - ve her üç yerlere kesme noktaları ekledik.

Bu özelliği çeşitli yerlerde referans ediyorum.

Kodumdan geçerken, özellik ayarlanıyor ve özelliğin ayarlandığı diğer iki yerden hiçbiri aranmıyor. (Beklenildiği gibi). Bununla birlikte, bir noktada, bu özelliğin değeri sıfır olmaya başlamıştır.

Sınıfıma bir NSLog ve bir kesme noktasıyla bir dealloc yöntemi ekledim - ancak hiçbir zaman çağrılmadı (bu yüzden bu, sıfırlama zayıf bir referans gibi ele alınmıyor).

"Güçlü" mülkümün neden buna sebep olmadan sıfır olacağına dair şaşkınım.

Herhangi bir tavsiye memnuniyetle karşılanacaktır.

Teşekkür

cevap

9

basit cevap şu olan bunu yapmak için neden olmasıdır. Henüz nasıl olduğunu henüz bilmiyorsunuz.

İvar erişildikten sonra bir noktada, hata ayıklama pencerenizde bir "i" harfi ile görünmelidir. Üzerine sağ tıklayın ve "İzle ..." yi seçin. Hafıza her değiştirildiğinde bir kesme noktası elde edersiniz.

+0

Teşekkürler ... haklısınız. – Steve