class Etudiant
{
private:
char * Nom;
char * Prenom;
int Matricule;
public:
Etudiant();
Etudiant(char *,char*,int);
~Etudiant();
void SetNom(char*);
void SetPrenom(char*);
void SetMatricule(int);
/* char * GetNom();
char * GetPrenom();
int GetMatricule(); */
void Affiche();
};
c'est cette version qu'il faut considerer la version precedente porte des erreurs .
Que dites vous avec la classe suivante car je ne retouve pas tres bien avec les chars et pointeurs. je vous demande de donner votre appréciation sur ce qui suit
class Etudiant
{
private:
string m_Nom;
string m_Prenom;
int m_Matricule;
public:
Etudiant();
Etudiant(const string& nom, const string& prenom, int matricule);
~Etudiant();
void SetNom(const string& nom);
void SetPrenom(const string& prenom);
void SetMatricule(int maricule);
/* string GetNom();
string GetPrenom();
int GetMatricule(); */
void Affiche();
};
Voila comment j'ai developpé mes fonctions (methodes)
Etudiant::Etudiant(const string& nom, const string& prenom, Const int matricule)
:m_Nom(nom), m_Prenom(prenom), m_matricule(maticule)
// un autre constructeur
Etudiant::Etudiant(const Etudiant& unEtudiant)
{
m_Nom=unEtudiant.m_Nom;
m_Prenom=unEtudiant.m_Prenom;
m_matricule=unEtudiant.m_matricule;
}
void Etudiant:: SetNom (const string& nom)
{
m_Nom=nom;
}
void Etudiant:: SetPrenom (const string& prenom)
{
m_Prenom=prenom;
}
void SetMaticule(int matricule)
{
m_matricule=matricule;
}
// Pour le destucteur
Etudiant::~Etudiant()
{
delete m_Nom;
delete m_Prenom;
delete m_matricule;
}
// ou
Etudiant::~Etudiant()
{
delete(Etudaint);
}