bonjour !
Cher messieurs les experts ; debutant besoin d'aide dans l'etude des classes et classes derriver où l'on trouve le constructeur et le destructeur par defaut mais si je defini un constructeur utilisateur le compilateur appel plusieur fois le constructeur et le destructeur voici un exemple :l'affichage
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 #include <stdio.h> #include <windows.h> class A { int j; public: A(void); // constructeur par defaut A(int); // constructeur utilisateur ~A(void); // destructeur }; A::A(void) // constructeur par defaut { return ; } A::A(int i) // Définition du constructeur utilisateur { j=i; printf("Exécution du constructeur de A.\n"); return; } A::~A(void) // Définition du destructeur { printf("Exécution du destructeur de A.\n"); return; } class B : public A // class derriver { public: B(void); ~B(void); }; B::B(void) : A(0) // Définition du constructeur utilisateur { printf("Exécution du constructeur de B.\n"); return; } B::~B(void) // Définition du destructeur { printf("Exécution du destructeur de B.\n"); return; } main() { A a; A::A(1); a.A::~A(); B b; B::B(); b.B::~B(); system("pause"); }
le compilateur appel plusieur fois les fonction du constructeur et destructeur ,Exécution du constructeur de A.
Exécution du destructeur de A.
Exécution du destructeur de A.
Exécution du constructeur de A.
Exécution du constructeur de B.
Exécution du constructeur de A.
Exécution du constructeur de B.
Exécution du destructeur de B.
Exécution du destructeur de A.
Exécution du destructeur de B.
Exécution du destructeur de A.
comment je peut rectifier ça svp ?
Partager