Bonjour
Je suis débutant en c++, je travaille sur les constructeurs. Je souhaiterai appeler le constructeur de la classe Mere, pour initialiser le constructeur de la class Fille. La class Mere à deux paramètres _nb1 et _nb2 et la classe Fille n'a que _nb3.
Je voudrais savoir si c'est possible d'appeler le constructeur de la classe Mere pour récupérer l'initialisation de la classe Mere, et initialiser le paramètre en plus de la class Fille.
Donc ça donnerai par exemple
Admettont que j'ai aussi une fonction affiche dans la classe Fille
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Mere m1(32,44); Fille f1(5)
Est donc moi j'aimerai obtenir le résultat suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 f1.affiche()
32, 44 ,5
Car ça marche, j'appel bien le constructeur de la class Mere mais seulement je récupère les valeurs par défaut de _nb1 et _nb2 et donc j'obtient cela :
0,0,5
Est ce quelqu'un peut m'aider voici mon code ---------------------
Il est pas très long, il y a deux class (Mere et fille) et dans c'est deux classe il y a les constreurs et la fonction affich()
Merci, d'avance pour votre aide
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 #include <iostream> #include <conio.h> using namespace std; // Class Mere class Mere { protected: int _nb1; int _nb2; public: Mere(int nb1 = 0, int nb2 = 0){_nb1 = nb1; _nb2 = nb2;} void affiche() const; }; // class Fille class Fille : public Mere { int _nb3; public: // Constructeur par défaut Fille (int nb3 = 0) {_nb3 = nb3;} // Deuxième constructeur Fille(int nb3, int nb1, int nb2 ); void affiche() const; }; void Mere::affiche() const { cout << "Nombre 1 :" << _nb1 << endl << "Nombre 2 : " << _nb2 <<endl; } Fille :: Fille (int nb3, int nb1,int nb2) : Mere(nb1,nb2) { _nb3 = nb3; _nb1 = nb1; _nb2 = nb2; } void Fille::affiche() const { cout << "Nombre 3 : " <<_nb3 << endl << "Nombre 1 :" << _nb1 << endl << "Nombre 2 : " << _nb2 <<endl; } int main() { Mere m1(32,44); m1.affiche(); Fille f1(5); f1.affiche(); getch(); return 0; }
Partager