Bonjour voila ,

On a un projet a faire ... nous avons bloqué sur quelque chose , " l'agrégation " entre le main ( ) et une autre classe ...

"L'autre classe" appellée A est celle qui a instancier l'objet de la classe B

.h de A

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
class A
{
     B *ObjetDeB;
};
.h de B

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
class B
{
     public :
                 void loooool ( ) ;
};

dans le cpp de A

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
A::A()  // Constructeur
{
    ObjetDeB = new B ; 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
B A :: getmonB()    // getter de l'attribut
{
    return *ObjetDeB ;
}

main () :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
int main()
{
   A MonA ;
   B *MonB ;
 
   *MonB = MonA.getmonB() ;
     MonB->loooool();
 
  return 0 ;
}

Pouvez me dire , si ce qui est au dessus est correct ? Merci davance

En fait , ce que nous recherchons a faire , cest de pouvoir utiliser l'instance de B crée par A via son adresse dans le main ( )


Cordialement