write sirve read que para manejo libreria español ejemplo crear como archivos archivo c++ function ofstream

sirve - seekg c++ español



"Ofstream" como argumento de función (3)

Por supuesto que hay Sólo tiene que usar la referencia. Como eso:

void foo (std::ofstream& dumFile) {}

De lo contrario, se invocará el constructor de copia, pero no hay tal definido para la clase ofstream .

¿Hay una manera de pasar la secuencia de salida como argumento como

void foo (std::ofstream dumFile) {}

Intenté eso pero me dio

error : class "std::basic_ofstream<char, std::char_traits<char>>" has no suitable copy constructor


Si está utilizando un compilador conforme a C ++ 11 y una biblioteca estándar, debería estar bien para usar

void foo(std::ofstream dumFile) {}

Siempre que se llame con un rvalue. (Tales llamadas se verán como foo(std::ofstream("dummy.txt")) , o foo(std::move(someFileStream)) ).

De lo contrario, cambie el parámetro que se pasará por referencia y evite la necesidad de copiar / mover el argumento:

void foo(std::ofstream& dumFile) {}


ostream pasar una referencia al objeto ostream ya que no tiene un constructor de copia:

void foo (std::ostream& dumFile) {}