le question la plus facile du monde mais j'ai un trous de memoire
dans une classe client je veut savoir le nombre de client je declare donc une varaible nbClient
en java je sais le faire ... mais pa en C++
Help please
le question la plus facile du monde mais j'ai un trous de memoire
dans une classe client je veut savoir le nombre de client je declare donc une varaible nbClient
en java je sais le faire ... mais pa en C++
Help please
Déclare un attribut entier dans ta classe. Pour suivre le nombre d'instances de cette classe, il faut que cet attribut soit partagé entre les différentes instances, donc déclaré statique. Ensuite, tu n'as plus qu'à automatiquement incrémenter la valeur de cet attribut dans les constructeurs (ainsi que le décrémenter dans le destructeur). Et voilà!
Salut !!
Je t'invite quand même à regarder les tutos histoire de te remettre car c'est vraiment LA base....
Ceci n'est qu'un exemple :
Puis...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class Client{ private : int nbClient; public : Client(int _nbClient) {nbClient = _nbClient;} ~Client(void); int GetNbClient(void) {return nbClient;} };
[EDIT] Programan, moi j'avais pas compris la question comme toi... Mais si effectivement c'est pour suivre le nombre d'inntances de la classe il faut utiliser la variable en global (cad static)....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 //dans le main Client MesClients(50); std::cout<<MesClients.GetNbClient()<<std::endl;
A+
Oui c'est une variable static que je veut...
il me manque seulement la syntaxe (si seulement c'etait du java ^^)
error C2228: left of '.GetNbClient' must have class/struct/union type
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Client MesClients(50); std::cout<<MesClients.GetNbClient()<<std::endl;
le pbl c'est que j'ai un tableau dans mon main et pour appeler ma fonction getNbClient si je met les parentheses (crochet) il me dit le 1
si je met static il me fait une erreur.
Pareil si je ne met pas les parentheses .
Et avec :: ça marche?
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Comme diraient les modos:Oui c'est une variable static que je veut...
il me manque seulement la syntaxe
Pensez à la!!!
http://c.developpez.com/faq/cpp/?pag...SS_init_static
ou dois-je mettre :: ??Envoyé par Médinoc
Partager