J'en doute : une @property n'est pas grand chose d'autre (enfin si y'a les attributs retain & co mais bon) que la déclaration d'un setter et d'un getter.
Ainsi quand on écrit :
@property NSString* toto;
Cela revient, en somme, à déclarer un setter et un getter ainsi :
. Là dans ton cas je ne pense pas (à essayer, j'ai jamais testé mais je doute de la possibilité quand même) qu'il y ait un setter approprié qui pourrait correspondre... Ou alors ça serait un setter vers le "NSString**" (le pointeur vers le NSString*), mais tu perds alors la notion de tableau pour revenir à la notion plus basique de pointeur (les tableaux C n'étant rien d'autre que des pointeurs vers le premier élément du tableau, mais quand même) :
Mais du coup même si jamais ça ça marchait, faut avoir conscience que ton setter et ton getter te retourneraient un table (un NSString*[]), et pas une NSString donnée dans le tableau. En particulier si tu veux utiliser le setter faudra lui filer un nouveau tableau complet, le setter ne te permettra pas de modifier une donnée dans le tableau. D'ailleurs utiliser des tableaux C ne permet pas non plus de garantir que ton tableau ne sera pas modifié...
Bref, la syntaxe est pas top, et puis je vois pas trop ce que tu peux attendre du fait de déclarer cela en @property à l'usage... donc autant préférer des setters/getter dédiés, genre [tt]-(NSString*)totoAtIndex:(NSInteger)idx;[/tt] et [tt]-(void)setToto:(NSString*)newString atIndex:(NSInteger)idx[/tt] qui seront bien plus utiles.
Bref, la syntaxe est pas top, et puis je vois pas trop ce que tu peux attendre du fait de déclarer cela en @property à l'usage... donc autant préférer des setters/getter dédiés, genre [tt]-(NSString*)totoAtIndex:(NSInteger)idx;[/tt] et [tt]-(void)setToto:(NSString*)newString atIndex:(NSInteger)idx[/tt] qui seront bien plus utiles.
Réponses
Ainsi quand on écrit : Cela revient, en somme, à déclarer un setter et un getter ainsi : .
Là dans ton cas je ne pense pas (à essayer, j'ai jamais testé mais je doute de la possibilité quand même) qu'il y ait un setter approprié qui pourrait correspondre... Ou alors ça serait un setter vers le "NSString**" (le pointeur vers le NSString*), mais tu perds alors la notion de tableau pour revenir à la notion plus basique de pointeur (les tableaux C n'étant rien d'autre que des pointeurs vers le premier élément du tableau, mais quand même) : Mais du coup même si jamais ça ça marchait, faut avoir conscience que ton setter et ton getter te retourneraient un table (un NSString*[]), et pas une NSString donnée dans le tableau. En particulier si tu veux utiliser le setter faudra lui filer un nouveau tableau complet, le setter ne te permettra pas de modifier une donnée dans le tableau. D'ailleurs utiliser des tableaux C ne permet pas non plus de garantir que ton tableau ne sera pas modifié...
Bref, la syntaxe est pas top, et puis je vois pas trop ce que tu peux attendre du fait de déclarer cela en @property à l'usage... donc autant préférer des setters/getter dédiés, genre [tt]-(NSString*)totoAtIndex:(NSInteger)idx;[/tt] et [tt]-(void)setToto:(NSString*)newString atIndex:(NSInteger)idx[/tt] qui seront bien plus utiles.
peut etre preferer un NSMutableArray de NSString ? ca resoud pas mal de probleme?
Je vais faire ca, c'est le plus simple.
Merci a tous.