Références à des int
elf
Membre
Bonjour, je cherche à faire des une fonction qui retourne une référence a un int sans créer de classe séparée...
Autrement dit si cette fonction est -(int)returnAnInt et que l'int retourné est une var d'instance et est 18 si on fait [self returnAnInt] = 2; ou quelque chose du genre ça set l'int retourner (la var d'instance) à 2...
Autrement dit si cette fonction est -(int)returnAnInt et que l'int retourné est une var d'instance et est 18 si on fait [self returnAnInt] = 2; ou quelque chose du genre ça set l'int retourner (la var d'instance) à 2...
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
anInt = 2;
Si tu veux modifier cette variable depuis une autre classe AnotherClass, il faut créer dans la classe MyClass un accesseur:
-(void) setAnInt:(int)x
{
 anInt = x;
}
Ensuite dans AnotherClass, après y avoir installé par IB un outlet myClass
qui pointe sur MyClass, tu appelles
[myClass setAnInt:2];
Si tu veux récupérer la valeur de anInt dans AnotherClass,
il faut un autre accesseur dans MyClass, du même nom que la variable:
-(int)anInt
{
 return anInt;
}
et dans AnotherClass:
anotherInt = [myClass anInt];
En fait je veux une référence vers un int. un pointeur quoi...
Une méthode retournerais un pointeur vers cet int (qui est une variable d'instance amsi on ne sais pas laquelle) et que si on fait [self mafctquiretournunpointeurversunint] = 5; l'int deviens cinq
Si on déclare:
int *pInt; //pInt est un pointeur sur un int
int a;
pInt = &a; //pInt = adresse de a
pInt est maintenant un pointeur sur a.
*pInt = 5; //a est maintenant égal à 5.
La question que tu poses, c'est comme si tu demandais:
"Je veux envoyer 100 euros à une personne, mais je ne sais pas laquelle.
Comment dois-je faire pour qu'après envoi de mon chèque cette personne recoive 100 euros ?"
;
Habituellement la bonne façon de faire ressemble à ceci: