Avec une instance monTableau variable:Initialiser une variable d'instance
@interface AppController : NSObject
{
NSArray *myArray;
}
Parfois, je vois monTableau initialisé comme ceci:
- (void)init
{
[super init];
self.myArray = [[NSArray alloc] init];
return self;
}
et parfois je vois avec une méthode plus compliquée:
- (void)init
{
[super init];
NSArray *myTempArray = [[NSArray alloc] init];
self.myArray = myTempArray
[myTempArray release];
return self;
}
Je sais qu'il n'y a pas de différence dans le résultat final, mais pourquoi les gens prennent-ils la peine de faire la version plus longue? ? Mon sentiment est que la version plus longue est meilleure si la variable d'instance est configurée avec @property et @synthesize (probablement parce que la variable a déjà été allouée). Est-ce une partie de la raison?
Merci.
Le fait que vous ayez nommé les méthodes 'init' est totalement trompeur car aucun de ceux-ci n'est qualifié à distance pour être un ini tialiseur. – bbum