Utiliser l'objet au lieu d'un pointeur
Bonjour,
J'ai toujours programmé en C++ mais niveau gestion objets je suis vraiment à “l'ancienne” si je puisse dire.
Pour l'instant je fais comme suit :
Code:
1 2 3 4 5 6 7 8 9
| classe crayon
{
int x;
};
class plumier
{
vector<crayon>cray;
}; |
Et donc j'utilise cray comme un tableau :
Code:
plumier.cray[pointeur].x;
J'ai vu certains faire
Code:
crayon *cray = new crayon; // Ou un truc dans ce style
Comment pourrais-je faire pour travailler avec cray.x au lieu de plumier.cray[pointeur].x de façon à ce que la classe plumier sache toujours combien de crayons ont été créés et qu'elle aie accès à eux ?
J'espère avoir été clair, sinon je veux bien expliquer avec d'autres mots. Suffit de le mentionner. J'aimerais partir sur de bonnes bases pour la suite.
Merci par avance.
Édit : La bonne réponse de A à Z :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| class crayon
{
int x;
};
class plumier
{
vector<crayon*>cray;
void ajouterCrayon( crayon *arg )
{
crayon.push_back( arg );
}
// la classe plumier a accès de cette façon : cray[pointeur]->x;
};
//On crée un plumier
plumier plum;
// Création de crayons
crayon crayon1 = new crayon();
plum.ajouterCrayon( crayon1 );
crayon1->x = 20; |