[Héritage] Question sur constructeur dans une classe héritée
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:
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:
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:
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:
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.