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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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

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