Creo que el problema es que ofstream no permite el constructor de copia. Tendrías que hacerlo por
punteros o pasando el
parametro del nombre de archivo:
Por punteros:#include <fstream>
class miClase{
public:
miClase(std::ofstream& tStream){ stream = &tStream; };
void Escribe(){ *stream << "Hola. Esto es una prueba\n";
stream->close(); }
private:
std::ofstream *stream;
};
int main(){
std::ofstream mainStream("texto.txt", std::ios::out);
miClase pruebaClase(mainStream);
pruebaClase.Escribe();
}
Alternativa:#include <fstream>
#include <iostream>
class miClase{
public:
miClase(std::string filename){ stream.open(filename, std::ios::out); }
void Escribe(){ stream << "Hola. Esto es la prueba 2\n";
stream.close(); }
private:
std::ofstream stream;
};
int main(){
miClase pruebaClase("texto.txt");
pruebaClase.Escribe();
}