SORU
25 Mart 2012, Pazar


Objective-C ilan için @özellik öznitelikleri (, kopyalama, güçlü, zayıf)nonatomic

Biri açıklamak için bana ayrıntılı olarak ne zaman gerekir her öznitelik: nonatomic, copy, strong, weak, ve böylece, bir ilan mülkiyet ve açıklamak her ne yapar? Örnek bir çeşit büyük de olabilir. ARC kullanıyorum.

CEVAP
25 Mart 2012, Pazar


Nonatomic

nonatomic çoklu iş parçacığı oluşturma amaçlı kullanılır. Eğer bildirimi zamanında nonatomic öznitelik kümesi varsa, o zaman başka bir iş parçacığı bu nesneye erişmek isteyen erişim ve çoklu iş parçacığı açısından sonuçlar verebilir.

Kopyala

copy nesne değişken gereklidir. Eğer şu anda olduğu gibi nesnenin değeri gerekiyorsa, bu kullanmak ve bu değer herhangi bir değişiklik nesnenin diğer sahipleri tarafından yapılan yansıtmak istemiyorum. Kopya istinat çünkü bittiğinde nesneyi serbest bırakmak gerekir.

Atayın

Assign biraz copy zıddıdır. assign bir özellik alıcısı çağırırken, gerçek veri için bir referans verir. Genellikle (yüzer, int, BOOL...) ilkel tür bir özelliği varsa bu özelliği kullanın

Korur

retain öznitelik bir nesneye bir işaretçi gereklidir. Ayarlayıcı @synthesize tarafından oluşturulan (Ekle korumak sayımı aka) nesne korur. Onunla işiniz bittiğinde nesneyi serbest bırakmak gerekir. Artacak korumak kullanarak ve autorelease pool bellek sayısı işgal korur.

Güçlü

strong Objective-C parçası Otomatik olarak öznitelik, korumak Referans Sayma (ARC) yerine geçer. -ARC sigara kodu korumak için sadece bir anlama geliyor.

Bu strong ve iOS 5 weak hakkında bilgi edinmek için iyi bir web sitesidir. http://www.raywenderlich.com/5677/beginning-arc-in-ios-5-part-1

Zayıf

weak 1 başvuru sayısı artış olmayacak dışında strong benzer. Bu nesnenin bir sahibi olmaz ama sadece bir başvuru içerir. Eğer nesnenin başvuru sayısı hala işaret olsa bile 0, buraya düşerse, bellekten kaldırıldı.

Yukarıdaki link de İyi ile ilgili bilgileri içerirZayıf ve Güçlü.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BachelorsPadTv

    BachelorsPad

    17 Ocak 2012
  • infiniTuts

    infiniTuts

    18 Ocak 2012
  • Rootjunky.com

    Rootjunky.co

    22 EKİM 2011