Héritage et surcharge de méthode ?
Salut à tous :)
J'aimerais faire dériver une classe d'une autre, et utiliser des méthodes surchargées entre les deux. Malheureusement ça ne passe pas du tout :s
Voici le code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| class File {
public:
File(FileType type);
File(string path);
virtual ~File();
int read(int lineNumber, int & sortie);
int read(int lineNumber, float & sortie);
int read(int lineNumber, bool & sortie);
};
class FileConfig: public File {
public:
FileConfig(FileType type);
FileConfig(string path);
virtual ~FileConfig();
int read(int lineNumber, string & sortie);
int read(int lineNumber, vector<int> & sortie);
}; |
Le code de ces deux classes compile, mais si j'essaie de les utiliser avec une autre ça plante:
Code:
1 2 3
| FileConfig file(CONFIG_CUR);
int test;
file.read(0, test); //ne compile pas |
Le compilateur me dit que la méthode FileConfig::read(int, int&); n'est pas définie :calim2:
J'ai beau chercher je ne trouve pas de solution, j'en viens à me demander si c'est possible de faire une telle surcharge.
Merci d'avance pour vos conseils :ccool: