Le langage SMS est exclu sur les forums ProgBoards, tout message ne respectant pas la charte sera déplacé, modifié, ou supprimé par nos modérateurs.

Forum Langages » C & Cie. » [C++] Problème d'héritage

Francesco
Modérateur
Citer Windows XP Firefox 2 - Posté le 15/05/2007 à 09:30
Bonjour (exclamation)

Encore un petit problème en C++.


class Schedule
{
public:
void method(int truc);
virtual void method() = 0;
};

class Holistic : public Schedule
{
virtual void method()
{
blablabla
}
};



quand je compile, et appelle la méthode method(int truc) à partir d'un objet de la classe Holistic, il me renvoie une erreur, me disant que la méthode ne prend pas un argument. Comme s'il ne connaissait pas la méthode.
Il suffit que je change le nom de la méthode pour que cela marche parfaitement. Bug ?

J'utilise Visual Studio C++ 2005.

[edit]
même problème avec g++.
Le C++ ne permet pas de surcharger des méthodes, certaines étant virtual et d'autre non (question)
[/edit]

Edité par Francesco ( 15/05/2007 09:33:27 )
Gates gave you the windows.
GNU gave us the whole house.(Alexandrin)
zuzuf
ProgBoarder
RemonterCiter Linux Firefox 2 - Posté le 15/05/2007 à 16:03
essaye de compléter un peu le nom de la méthode appelée, par exemple:
mon_objet.Schedule::method( mon_int );

ça doit être un problème de nom de symboles ici.

au pire redéclare une void method(int truc) dans laquelle tu appelles la première.
Linux a un noyau, windows un pepin

Poster une réponse

STOP aux fautes volontaires !
Message
Formatage
Note: pour partager du code source, merci d'utiliser le wall !
Smileys (sourire) (yekyek) (clein d'oeil) (désapprouve) (triste) (cool) (langue) (confus) (gêné) (neutre) (eek) (surpris) (diable) (flèche) (exclamation) (question) (diable) (idée) (méchant)
Pseudonyme
Recopiez le code
v6 © Computaid SPRL 2005-2008 - Tous droits réservés - Hébergé par eTigris - Page générée en 0,085 s - Crédits - Stats
1 connecté