Question

Ok, si vous jetez un oeil à mes deux postes précédents (en particulier Lien # 2), je voudrais poser une autre question concernant le même code. Dans une déclaration de méthode, je suis désireux de définir l'un des paramètres comme un pointeur vers un tableau de pointeurs, qui pointent vers feat_data. Je suis en quelque sorte à une perte de l'endroit où aller et quoi faire, sauf pour mettre (NSMutableArray *) featDataArray dans la déclaration comme ci-dessous et accéder à chaque objet par un autre pointeur de type feat_data. BTW, désolé de se poser tant de questions. Je ne peux pas trouver quelques-unes des choses comme ça dans le livre que je suis en utilisant ou peut-être que je suis à la recherche dans le mauvais endroit?

-(void)someName:(NSMutableArray*)featDataArray;

feat_data *featDataPtr = [[feat_data alloc] init];
featDataPtr = [featDataArray objectAtIndex:0];

Lien # 1

Lien # 2

Était-ce utile?

La solution

Votre déclaration semble bien. « NSMutableArray * » est un type approprié pour votre paramètre. (Objective-C n'a pas génériques de sorte que vous ne pouvez pas déclarer quoi que ce soit au sujet de ce qui est à l'intérieur du tableau.)

Un problème que je vois dans votre code est que vous allouez un objet sans raison, puis jeter le pointeur (qui fuit donc la mémoire).

Je ne sais pas ce qu'il est que vous essayez de faire, alors voici quelques choses que vous pouvez faire avec un NSMutableArray:

- (void)someName:(NSMutableArray *)featDataArray {

    feat_data *featDataPtr = [[feat_data alloc] init];
    [featDataArray addObject:featDataPtr]; // add an object to the end
    [featDataPtr release];

    feat_data *featDataPtr2 = [[feat_data alloc] init];
    [featDataArray replaceObjectAtIndex:0 withObject:featDataPtr2]; // replace an existing entry
    [featDataPtr2 release];

    feat_data *featDataPtr3 = [featDataArray objectAtIndex:0]; // get the element at a certain index
    // do stuff with featDataPtr3
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top