Probleme avec des variable membre public

titouf71 Messages postés 13 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 18 juillet 2007 - 7 avril 2005 à 09:09
NitRic Messages postés 402 Date d'inscription mardi 1 mai 2001 Statut Membre Dernière intervention 15 août 2011 - 8 avril 2005 à 20:07
Bonjour,
J'ai un gros probleme avec des variables membres public.
J'ai declare une variable membre en public en CString dans ma classe CLecture.
Je voudrais recuperer son contenu dans une autre classe CAfficher mais je n'y arrive pas. A chaque fois je n'ai rien dans la deuxieme classe. voila ler code de ma classe CAfficher :

CLecture image;
CString chemin;
chemin=image.che; //le non de ma variable dans la classe CLecture est che
MessageBox(chemin);

La a chaque fois le chemin est vide alors que dans l'autre classe j'ai aussi un MessageBox et la variable contient bien le chemin de l'image.

Quelqu'un peut il m'aider parce que la je ne comprend vraiment pas pourquoi ca marche pas.
Je compile avec visual C++ 6

Merci.

3 réponses

NitRic Messages postés 402 Date d'inscription mardi 1 mai 2001 Statut Membre Dernière intervention 15 août 2011
8 avril 2005 à 01:16
C'est normal, tu déclare un nouvel objet de type CLecture, tu devrais plutôt utiliser celui existant ...






~(.:: NitRic ::.)~
0
titouf71 Messages postés 13 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 18 juillet 2007
8 avril 2005 à 10:45
comment ca utiliser celui existant? je suis dans deux boite de dialogue differentes en fait
0
NitRic Messages postés 402 Date d'inscription mardi 1 mai 2001 Statut Membre Dernière intervention 15 août 2011
8 avril 2005 à 20:07
D'après ce que j'ai compris et d'après le p'tit

bout de code que tu as donné, ca ressemble à ceci:



class CLecture

{

public:

CLecture(){}

~CLecture(){}

// etc ...



CString che;

};



class CAfficher

{

public:

CAfficher(){}

~CAfficher(){}

void uneMethode( void )

{ // ton code

// ici tu déclare un nouvel objet `CLecture` donc, `che` ne contient rien!!! il est vide!

CLecture image;

CString chemin;

chemin = image.che; //le non de ma variable dans la classe CLecture est che

MessageBox(chemin); // ca n'affiche rien et c'est normal !

}

// etc ...

};


int main()

{



CLecture cLecture;

CAfficher cAfficher;



cLecture.che = "abcd";

cAfficher.uneMethode();



// dans le MessageBox il va y avoir:

// rien!



return 0;

}



c'est comme si tu voulais acceder à une

variable local à une fonction à partir d'une

autre fonction, c'est impossible ...



void func( void )

{

int a = 5; // local à `func`

} // sa vie/existance/... prend fin ici ...



int main()

{

a 15; // BOOM!!!!!!!> `a` => innexistante

return 0;

}





Mais bon, il est possible que je n'ai pas tout à

fait compris ton problème mais d'après ton post,

ca ressemble à ceci ...






~(.:: NitRic ::.)~
0
Rejoignez-nous