begin process at 2012 05 29 13:55:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

Polymorphisme (question de debutant)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Polymorphisme (question de debutant)

jeudi 26 août 2004 à 13:33:19 | Polymorphisme (question de debutant)

madlolo2

Alors la, j'avoue que j'y perds mon latin ...
Regardez ce code :

class CMere
{
public:
int toto (char * var1, int var2);
int toto (char * var1);

CMere();
virtual ~CMere();



};

CMere::CMere()
{
cout << "Constructeur CMere" << endl;
}

CMere::~CMere()
{

}

int CMere::toto(char *var1, int var2)
{

return(1);
}

int CMere::toto(char *var1)
{

return(2);
}



class CFille : public CMere
{
public:
int toto (char *var1);
CFille();
virtual ~CFille();

};

CFille::CFille()
{
cout << "Constructeur CFille" << endl;
}

CFille::~CFille()
{

}

int CFille::toto(char *var1)
{

return(3);
}


void main (void) {

char * c = "coucou!!!";
CFille monobjet;
cout << monobjet.toto(c) << endl;
//cout << monobjet.toto(c,2) << endl; // c'est une erreur !!!!

CMere monobjet2;
cout << monobjet2.toto(c) << endl;
cout << monobjet2.toto(c,2) << endl;

}



Voila donc un code fort simple et qui ne fait pas grand chose :
je redefinit la methode int toto (char*) dans la classe fille CFille.
Or, ce faisant, je cache aussi la methode int toto (char *, int) de la classe mere CMere.
Mais il me semblait que la signature d'une fonction en C++ depend du nom ET de ses arguments !!!
Ou est le probleme ? Y'a forcement une partie de cours que j'ai loupe.
A quoi est ce du ?
jeudi 26 août 2004 à 14:11:51 | Re : Polymorphisme (question de debutant)

djl

je t'ai deja repondu que si tu redefini tu peux plus acceder directement au membre de la classe mere

"Mais il me semblait que la signature d'une fonction en C++ depend du nom ET de ses arguments !!! "

oui, et tu parle la de 2 fonctions qui n'ont pas le meme nom
jeudi 26 août 2004 à 14:20:43 | Re : Polymorphisme (question de debutant)

asmanur

Si tu veux que les fonc' de la CFille soit différéntes de la mère
tu doi faire dans CMère
class CMere
{
public:
virtual int toto (char * var1, int var2);
virtualint toto (char * var1);

CMere();
virtual ~CMere();



};
et ensuite
redéfinir CFille::toto(char*,int) et CFille::toto(char)
jeudi 26 août 2004 à 15:12:57 | Re : Polymorphisme (question de debutant)

DeAtHCrAsH

Utilise la surcharge de fonction comme asmanur te l'a indiqué (à l'aide de préfixe virtual)

Shell
jeudi 26 août 2004 à 15:21:56 | Re : Polymorphisme (question de debutant)

djl

en fait c'est pas de la surcharge mais de la redefinition


Cette discussion est classée dans : int, toto, char, cfille, cmere


Répondre à ce message

Sujets en rapport avec ce message

Polymorphisme (question de debutant) [ par madlolo2 ] Alors la, j'avoue que j'y perds mon latin ...Regardez ce code : class CMere {public: int toto (char * var1, int var2); int toto (char * var1); CMere passage de MSDOS à win32 Application: problème de CAST! [ par malik7934 ] Hello,en un mot : H-E-L-P-!-!-!J'ai un problème qui m'énerve depuis deux jours...Si j'exécute le programme suivant dans VC++:#include "mycrypt.h"#prag comment afficher un pixel en VGA ? [ par LedPaL ] Slt,je programme ac dev-cpp et j'arrive pas a afficher de pixels a l'écran !!! de l'aide plz !!voici un bout de ma source:unsigned char * ecran = (uns Comment forcer le RTS pour une liaison RS232 [ par ancat ] Bonjourje viens de faire un petit prog (grandement inspire de sources du site) mais je ne saisis pas trop le controle du RTS.Celui ci est-il traite pa pb error C2011 par pitié aidé moi [ par neonmix ] Voici mon prog:c'est un garage ki possède des voitures, ces voitures peuvent être "de course" ou "de série" (classe mere voiture, classe fille voiture conversion int en char* [ par arwenita ] Encore un petit problème en C++...Dans mon programme, je voudrais afficher une liste de nombres (premiers), que je récupère de la fonction Crible(n).L INT TO CHAR [ par nicolas66 ] Salut tlm c encore moi ..cette fois-ci j'aimerai convertir un int en char mais je n'y arrive pas :(. J'ai essayé de faire comme sur une source sur le les Argument Du main() !!! [ par WaFFel ] bha expliquon mon problem !int main(int nArg,char* cArgs[]){ // ..... plein de ligne de code ...... }bha vous voyer ses une declaration d'un main d pb de conversion int -> string [ par RoAdBooK ] Bonjour à tous,Problématique : je souhaite décomposer une date pour obtenir une string de la forme LAAAAMM1.txt (AAAA=année et MM = mois) qui me servi tableaux de chaines en argument de fonction [ par ashboody ] je dispose d'une fonction connect a laquelle je doit passer un tableau de chaine char **RegisteredChannels_Name. Pour cela je déclare mon tableau dans


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,484 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales