attribut de type ofstream
Bonjour, j'ai une classe File dans la quelle j'ai déclarer un attribut ofstream afin de pouvoir le réutiliser partout dans ma classe:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| class File
{
public:
File(string filename);
virtual ~File();
void openWrite();
void closeWrite();
void writeInt(int i);
protected:
private:
string filename;
ofstream out;
}; |
Le problème c'est que si je veux ouvrir le flux out avec un nom de fichier :
Code:
1 2 3 4 5 6 7
| void File::openWrite() {
out(filename.c_str());
if(!out.is_open()) {
cout << "impossible d'ouvrir '" << filename << "'" << endl;
exit(EXIT_FAILURE);
}
} |
J'ai une erreur à la compilation :
Code:
/home/pj/CPLUSPLUS/Drawing/src/File.cpp|10|erreur: no match for call to (std::ofstream {aka std::basic_ofstream<char>}) (const char*)|
la ligne 10 c'est out(filename.c_str());
Merci pour votre aide !