2011-01-10 2 views
0

Ich bin nicht vertraut mit Objective-C-Syntax, also könnte jemand erklären, was jeder Begriff in der folgenden Codezeile bedeutet?Kann jemand jedes Wort dieser Objective-C-Eigenschaftsdeklaration erklären?

@property (nonatomic, retain, readonly) NSManagedObjectContext *managedObjectContext; 
+1

nehmen Sie sich Zeit, ein Tutorial zu lesen und kommen Sie zurück, wenn Sie eine bestimmte Frage haben. –

+0

Ich sehe da sind zwei enge Stimmen. Ich stimme den angegebenen Gründen nicht zu. Die Frage ist in keiner Weise vage und kann leicht beantwortet werden (siehe Vladimirs Antwort). Die Frage ist jedoch ein Fall von "plz mach meine Arbeit für mich kthx", also -1. – JeremyP

+0

danke euch allen ........ interessante leute hier .. :) – Zaraki

Antwort

14
  • @property - ist eine Objective-C Syntax zur Deklaration und ggf. Accessormethoden beispielsweise variable synthetisieren. Lesen Sie official reference für weitere Details.
  • nonatomic - Mittel, die Getter-Verfahren synthetisiert wird Ivar Rück direkt, ohne es für gewinde Sicherheit
  • behalten Verriegelung - bedeutet, dass Ivar wird in setter Methode
  • Nur-Lese beibehalten werden - der Trick zu machen Setter-Methode "private" für Klassenbenutzer - so wird nur die Getter-Methode für den Compiler sichtbar. Normalerweise wird diese Eigenschaft in der Implementierungsdatei ohne das Attribut readonly mit der benutzerdefinierten Kategorie neu deklariert, so dass die Setter-Methode innerhalb der Klasse selbst verwendet werden kann.
  • NSManagedObjectContext * - Variablentyp
  • managedObjectContext - Variablenname

Wieder einmal - beste Rat ist hier Properties Abschnitt in der offiziellen Dokumentation zu lesen ...

+0

diese antwort ist wirklich sehr hilfreich! – Sudhanshu

+0

+1 für mehr Geduld als ich. – JeremyP

0

Nur-Lese-Zugriffs bedeutet nur, Die Getter-Methode wird synthetisiert. Der Wert ist schreibgeschützt.

behalten Accessor bedeutet diese Klasse die Zeiger behält, wird der vorherige Wert

freigegeben

nonatomic Accessor bedeutet, dass keine Verriegelung auf das synthetisierte Getter aufgebracht wird

@property dieses Mitglied zur Synthese offenbart, so dass Getter/Setter kann erstellt werden. Ohne sie müssten Sie direkt auf die Immobilie zugreifen.

NSManagedObjectContext ist eine Art von Objekt/Klasse und * ManagedObjectContext ist ein Zeiger auf eine Instanz dieses Objekts.

Verwandte Themen