yanne1985
Messages postés87Date d'inscriptionsamedi 14 janvier 2006StatutMembreDernière intervention 5 décembre 2008
-
27 avril 2006 à 20:01
boudreau_benjamin
Messages postés3Date d'inscriptionmardi 8 novembre 2005StatutMembreDernière intervention 1 mai 2006
-
28 avril 2006 à 14:49
salut s'il vous plait j'ai besoin de votre aide
j'ai une classe
class date{
int jour,mois,annee;
void lire()
{
int i,j,k;
cin>>i; cin>>j; cin>>k;
jour=i; mois=j; annee=k;
}
}
class personne : public date {
char nom[30],prenom[30];
void lire()
}
comment je peux definir la fonction lire de personne qui fait appel a la fonction lire de date
boudreau_benjamin
Messages postés3Date d'inscriptionmardi 8 novembre 2005StatutMembreDernière intervention 1 mai 2006 28 avril 2006 à 14:49
Je suis d'accord ... pour faire de l'héritage ... il faut que tu te dises que ta classe dérivé est une sorte de la classe de base. Donc le mieux serait ici d'y aller par composition donc mettre simplement ta classe date comme donnée membre de ta classe personne...
Sinon l'héritage ici est inutile. Mais il aurait pu être utile si tu voulais faire une classe Client à partir mettons de ta classe personne puisqu'un client est une sorte de personne mais ne contient pas une personne :P
Bonne chance !!
cs_neria
Messages postés319Date d'inscriptionvendredi 21 février 2003StatutMembreDernière intervention16 février 2009 28 avril 2006 à 07:09
Si la méthode lire à été définie dans personne, et que personne hérite de date, tu auras automatiquement la méthode lire dans perssone (les noms ne sont pas très explicites). Ce n'est donc pas la peine de la surcharger, tu pourras écrire p.lire(). Le seul problème est que tu ne pourras pas accéder aux variables jour,mois, et annee dans personne vu qu'elles sont privée. Solution : inutile de faire une classe date pour ça ou mettre tes variables en protected. Pour initialiser tes valeurs à la création de personne, il faut appeler lire dans le constructeur.