Question de "cours" : constructeurs de classe dérivée et classe de base [Résolu]

Messages postés
12
Date d'inscription
vendredi 26 décembre 2003
Dernière intervention
2 septembre 2005
- - Dernière réponse : magic_Nono
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Dernière intervention
16 mars 2011
- 8 sept. 2005 à 09:31
Bonjour,

j'ai une classe personne et une classe etudiant dérivée de personne.
J'ai le constructeur Personne(string n)
J'ai aussi le constructeur etudiant(string mt[], float nt[],string n):personne(n).
Pourrait on m expliquer l'intèrêt de personne(n) à la fin de ce dernier constructeur?
Merci de votre future réponse.
a bientot.
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
6539
Date d'inscription
lundi 16 décembre 2002
Dernière intervention
22 août 2010
3
Merci
Ca va appeler le contructeur Personne avec n comme argument, sinon c'est le constructeur par défaut qui serait appelé. Et s'il n'y a pas de constructeur pas défaut, ca ne compile tout simplement pas.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 105 internautes nous ont dit merci ce mois-ci

Commenter la réponse de vecchio56
Messages postés
12
Date d'inscription
vendredi 26 décembre 2003
Dernière intervention
2 septembre 2005
0
Merci
Merci beaucoup de ta réponse rapide. :) A bientot.
Commenter la réponse de mhassine
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Dernière intervention
16 mars 2011
0
Merci
ton constructeur est

etudiant(string mt[], float nt[],string n);





son implémentation est



etudiant(string mt[], float nt[],string n):personne(n)

{

...

}





cela équivaut à peu de choses près à



etudiant(string mt[], float nt[],string n)

{

Personne p(n);

personne=p;

...
}

si l'opérateur d'égalité est défini.



Nota:

l'opérateur d'héritage (:) est une spécificité du C++ et n'hexiste plus en C#

ou on écrira




etudiant(string mt[], float nt[],string n)


{


personne=new Personne(n);


...

}



......... sauf erreur de ma part.

___________________________________________________________
Magicalement
Nono
Commenter la réponse de magic_Nono
Messages postés
6539
Date d'inscription
lundi 16 décembre 2002
Dernière intervention
22 août 2010
0
Merci
Je pense pas que personne n'est pas membre de la classe étudiant, il s'agit de la classe mère, donc le code n'est pas équivalent à ce que tu écris. On est obligé ici d'utiliser la méthode avec le :
Commenter la réponse de vecchio56
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Dernière intervention
16 mars 2011
0
Merci
sans héritage, la solution pour avoir qqch de similaire (point de vu
donnée, pas facilité d'acces) est d'avoir 'personne' en tant que membre
de Etudiant.

___________________________________________________________
Magicalement
Nono
Commenter la réponse de magic_Nono

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.