Bonjour à tous : je me permets de poster ce sujet sur Developpez.com après l'avoir posté sur d'autres forums car je suis très intrigué par mon problème.
Voilà, j'ai un souci avec une classe 'texte' lisant dans un fichier et écrivant dans un autre :
A l'exécution le programme m'affiche '-1' ce qui montre que le flux d'entrée n'est pas valide. Par contre si ma classe 'texte' n'hérite que d' ifstream (sans hériter d'ofstream, donc) la lecture est correcte.
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 #include <fstream> #include <iostream> using namespace std; class texte : public ifstream, public ofstream { public: texte(void) : ifstream("in.txt"), ofstream("out.txt") {} }; int main(void) { texte t; int c = t.ifstream::get(); cout << c << "\n"; }
Pourquoi le méchanisme d'héritage ofstream -> texte bloque-t-il mon flux d'entrée ?
Merci d'avance à ceux qui me liront.
Partager