Coś, co przez jakiś czas zastanawiałem się nad właściwościami. Czy przy korzystaniu z właściwości należy przesłonić komunikat o zwolnieniu, aby upewnić się, że właściwości są zwalnianymi właściwościami?Czy jest wymagane zwolnienie pamięci Objective-c 2.0?
tj. jest wystarczającym przykładem (fikcyjnym)?
@interface MyList : NSObject {
NSString* operation;
NSString* link;
}
@property (retain) NSString* operation;
@property (retain) NSString* link;
@end
@implementation MyList
@synthesize operation,link;
@end
Ponieważ NSString potwierdza protokół NSCopying, lepiej jest użyć @property (kopiowanie, ReadWrite) NSString * operacja Ponadto, jeśli stosujemy nowoczesne czasy pracy, nie trzeba określić zmienne instancji: będą zsyntetyzowane również. Aby dowiedzieć się więcej, wyszukaj "Podręcznik programowania Objective-C 2.0" firmy Apple i poszukaj sekcji zatytułowanych "Atrybuty deklaracji właściwości" i "Dyrektywy implementacji właściwości". –
+1 świetne pytanie, zastanawiałem się dokładnie to samo dokładnie – andy