Bonjour,

Je suis sur un probl�me de constructeur depuis quelques heures et n'y arrivant pas, je m'en remets � vous.

Voici ma classe de base Personne tr�s r�sum�e (dans le fichier Personne.h, le code des constructeurs se trouvant dans un fichier nomm� Personne.cxx) :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
class Personne
{	
	protected:
		char *nom;	
		char *prenom;
		int DateNaiss;
 
	public: 
		Personne (void);		
		Personne (char *nom, char *prenom, int DateNaiss);	
		Personne (Personne &p);
		~Personne ();
};
Je d�fini une autre classe que je nomme CorrespondantEMail (dans le fichier CorrespondantEMail.h) et qui h�rite de la classe de base Personne dont voici le code :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
#include "Personne.h"
class CorrespondantEMail:public Personne
{	
	private:
		int code;			
 
	public:
		CorrespondantEMail (int c=1):
			Personne()
		{
			code=c;
		}
};
J'aimerais avoir uniquement la d�claration du constructeur d'initialisation dans la classe et son code en dehors de la classe (dans un autre fichier, nomm� CorrespondantEMail.cxx), tout comme je fais avec ma classe Personne. J'ai essay� (entre autres) ce qui suit:

La classe CorrespondantEMail (dans le fichier CorrespondantEMail.h) :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
 
#include "Personne.h"
class CorrespondantEMail:public Personne
{	
	private:
		int code;			
 
	public:
		CorrespondantEMail (int c=1):Personne();
};
Et le code du constructeur d'initialisation (dans le fichier CorrespondantEMail.cxx) :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
 
#include "CorrespondantEMail.h" 
CorrespondantEMail::CorrespondantEMail(int c=1):Personne()
{
	code=c;
}
Mais cela ne fonctionne pas, pourriez-vous m'indiquer la syntaxe correcte ?
J'esp�re avoir �t� assez bref et assez clair.
Merci de l'attention que vous porterez � mon message.