Creation d'objet + concatenation en C++
Fermé
Sanches
-
15 févr. 2008 à 16:58
Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 - 15 févr. 2008 à 20:04
Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 - 15 févr. 2008 à 20:04
Bonjour,
Je voudrais créer des objet d'une classe Girafe. Cependant j'aimerai que se soit automatique en concaténant une chaine Gir avec un cpteur d'objet.
Comment faire s'il vous plait?
Merci
Bonne fin d'apres midi.
C'est assez urgent s'il vous plait.
Je voudrais créer des objet d'une classe Girafe. Cependant j'aimerai que se soit automatique en concaténant une chaine Gir avec un cpteur d'objet.
Comment faire s'il vous plait?
Merci
Bonne fin d'apres midi.
C'est assez urgent s'il vous plait.
A voir également:
- Creation d'objet + concatenation en C++
- Creation compte gmail - Guide
- Vente entre particulier objet - Guide
- Création site web - Guide
- Création compte google - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
2 réponses
Emeric84
Messages postés
30
Date d'inscription
vendredi 28 décembre 2007
Statut
Membre
Dernière intervention
24 avril 2008
8
15 févr. 2008 à 19:10
15 févr. 2008 à 19:10
Je n'ai rien compris à ton histoire de concaténation... Tu veux que tes objets prennent le nom : Gir01, Gir02, Gir03... ?
Dans ce cas crée un tableau de pointeurs de type Girafe :
Girafe* Gir[100];
Gir[0] = new Girafe(...);
Et accède-y depuis Gir[0], Gir[1]
Dans ce cas crée un tableau de pointeurs de type Girafe :
Girafe* Gir[100];
Gir[0] = new Girafe(...);
Et accède-y depuis Gir[0], Gir[1]
Mahmah
Messages postés
496
Date d'inscription
lundi 17 septembre 2007
Statut
Membre
Dernière intervention
22 juin 2010
125
15 févr. 2008 à 20:04
15 févr. 2008 à 20:04
Bonjour,
A partir de vrai chaîne c'est pas simple, à la rigueur et d'ailleurs je ne vois pas d'autre solution, c'est de partir de symboles...
(Que l'on pourra retransformer en chaîne à souhait par la suite)
#define _CLASS( __A, __B ) class __A ## __B
Si __A ou __B est aussi un define, par exemple
#define _GIR Gir
_CLASS( _GIR, onde )
Pour ne pas obtenir la classe _GIRonde il faut définir une macro intermédiaire (en tout cas sous Win ça marche) Il faut tester comment réagit ton compilo dans les deux cas...
#define __VALUE( __V ) __V
#define _CLASS( __A, __B ) class _VALUE(__A) ## _VALUE(__B)
Pour le compteur mon compilo gére un macro __COUNTER__ auto-incrémentée, à voir si le tien à un équivalent.
M.
EDIT. Oh, oui, j'ai mis avec des classes, c'est kifkif avec des objets, le tout est de former un nom..
A partir de vrai chaîne c'est pas simple, à la rigueur et d'ailleurs je ne vois pas d'autre solution, c'est de partir de symboles...
(Que l'on pourra retransformer en chaîne à souhait par la suite)
#define _CLASS( __A, __B ) class __A ## __B
Si __A ou __B est aussi un define, par exemple
#define _GIR Gir
_CLASS( _GIR, onde )
Pour ne pas obtenir la classe _GIRonde il faut définir une macro intermédiaire (en tout cas sous Win ça marche) Il faut tester comment réagit ton compilo dans les deux cas...
#define __VALUE( __V ) __V
#define _CLASS( __A, __B ) class _VALUE(__A) ## _VALUE(__B)
Pour le compteur mon compilo gére un macro __COUNTER__ auto-incrémentée, à voir si le tien à un équivalent.
M.
EDIT. Oh, oui, j'ai mis avec des classes, c'est kifkif avec des objets, le tout est de former un nom..