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
Version imprimable
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:
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:
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 typeCode:
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?
Comme diraient les modos: :wink:Citation:
Oui c'est une variable static que je veut...
il me manque seulement la syntaxe
Pensez à la :faq: !!!
http://c.developpez.com/faq/cpp/?pag...SS_init_static
ou dois-je mettre :: ??Citation:
Envoyé par Médinoc