Bonjour,
J'ai une classe C dans laquelle j'ai trois constructeurs C1 C2 C3 et j'aimerai que le constructeur de C1 appelle le constructeur C3. En java je le fait avec this() j'aimerai bien savoir comment faire en C++.

Merci.


J'ai un piti bout de code qui s'appelle cas d'école.
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include <iostream>
 
using namespace std;
 
class Complexe{
 
 
	protected:
		double x;
		double y;
	public:
		Complexe();
		Complexe(const Complexe &c);
		Complexe(double a,double b);
		~Complexe(){ cout <<endl<<"\tdestructeur"<<endl;};
 
		static void afficher(const Complexe &c);
};
 
// *****************************************************************************
//version 1 version standart
/*
Complexe::Complexe(){
	cout <<"\tconstructeur par defaut"<<endl;
	this->x=0.0;
	this->y=0.0;
}
 
// version 2, embriqué
*/
Complexe::Complexe(){
	cout <<"\tconstructeur par defaut"<<endl;
	Complexe(0,0);
}
 
// *****************************************************************************
// version 1
/* 
Complexe::Complexe(const Complexe &c){
	cout <<"\tconstructeur par copie"<<endl;
	this->x = c.x;
	this->y = c.y;
}
*/
 
// version 2
Complexe::Complexe(const Complexe &c){
	cout <<"\tconstructeur par copie"<<endl;
	Complexe(c.x,c.y);
}
 
// *****************************************************************************
//version 1 version standart
Complexe::Complexe(double a, double b){
	cout <<"\tconstructeur d'arrité 2"<<endl;
	x=a;
	y=b;
}
 
void Complexe::afficher(const Complexe &c){
	cout <<"\taffiche complexe: [ "<<c.x<<" , "<<c.y<<" ]"<<endl;
}
 
// *****************************************************************************
int main(void){
	cout <<endl<<"creation de l'objet a avec le Construteur par defaut"<<endl;
	Complexe a;
	Complexe::afficher(a);
 
 
	cout <<endl<<"creation de l'objet b avec le constructeur d'arrité 2 "<<endl;
	Complexe b(2.0,3.0);
	Complexe::afficher(b);
 
	cout <<endl<<"creation de l'objet c avec le constructeur par copie "<<endl;
	Complexe c(b);
	Complexe::afficher(b);
 
 
	cout <<endl<<"fin du programme"<<endl;
 
	return 0;
}