Bonjour!
Le concept de Class et de programmation objet est tout nouveau pour moi, c'est pour cela que je vous demande votre aide qui me sera bien precieuse

Voila je souhaiterai utiliser un objet de type "Adresse" (une classe que j'ai defini) dans un objet de type "Batiment", vous l'aurez compri l'objet "Adresse" sera utilisé dans l'objet "Batiment" :

Voici mon code , ça serait plus clair

Code de la classe Adresse:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
26
27
28
29
30
31
32
33
34
35
36
 
class Adresse{
	  int NumeroRue;
      char NomRue[20];
      int CodePostal;
	  char NomVille[20];
 
      public:
 
             Adresse(){   
             //1er constructeur qui initialise les champs à 00 et à XXXXXXX
             NumeroRue=00;
             char NomRue[20] = "xxxxxx";
             strcpy(this->NomRue,NomRue);
             CodePostal=0000;
             strcpy(NomVille,NomRue); }
 
 
             Adresse(int NumeroRue,char NomRue[20],int CodePostal,char NomVille[20]){
             //2e constructeur qui initialise les champs aux valeurs definies pas l'utilisateur
	         this->NumeroRue = NumeroRue;
             this->CodePostal = CodePostal;
             strcpy(this->NomRue,NomRue);
             strcpy(this->NomVille,NomVille); }
 
             void AfficherAdresse(){
             cout<<NumeroRue<<" rue "<<NomRue<<". "<<CodePostal<<" - "<<NomVille<<endl; }
 
/*On peut initialiser un objet Adresse de deux façons:
soit:     Adresse dupont;       
ce qui aura pour conséquence de creer une adresse dupont contenant des 00 et des xxxx
 
soit:     Adresse dupont(15,"liberation",33000,"bordeaux");
ce qui remplira l'objet dupont de type Adresse par les valeurs fournie (15,liberation,bordeaux...)
*/
};


et maintenant voici le code de la classe Batiment:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
class Batiment{
      Adresse AdresseBatiment;
      char Proprietaire[30];
      float Valeur;
 
      public:
             //1er constructeur initialisateur à 0000 et xxxxx
             Batiment(){
 
             Valeur=000000.000000;
             char Proprietaire[30] = "xxxxxx";
             strcpy(this->Proprietaire,Proprietaire);
             }
 
             void AfficherInfosBatiment(){
           cout<<"Adresse: "<<AdresseBatiment.AfficherAdresse()<<endl;
             cout<<"Proprietaire: "<<Proprietaire<<endl;
             cout<<"Valeur: "<<Valeur<<endl;
             }   
 
};
Voila le probleme vient evidement de mon cout AdresseBatiment.AfficherAdresse() ,

dans mon main j'ai fais un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
Batiment A;
A.AfficherInfosBatiment();
je m'attends a ce que mon programme m'affiche:
00 rue xxxxxxxxx. 0000 - xxxxxxxxx
xxxxxxx
0000000.000000

alors qu'il fait une erreur de compilation
la solution est certainement evidente mais comprenez moi, je ne sais pas grand chose des classes.
Alors je fais comment pour afficher l'adresse ?