Mira lo que podes hacer es mandarle alguna instancia creada de la clase ostream o derivada, acordate que en C++ tenes herencia y la clase ostream es una clase base, de la cual heredan otras, por ejemplo std::ofstream es una de ellas, que representa un archivo de salida, o sino tenes una instancia implicita std::cout que representa la salida estandard por pantalla...
Vos podrias hacer lo siguiente:
#include<iostream>
int main(int argc, char** argv) {
Lista miLista;
miLista.mostrar(std::cout);
return 0;
}
Que imprime a la lista por salida estandard (pantalla)
O bien podes hacer
#include<iostream>
int main(int argc, char** argv) {
Lista miLista;
std::ofstream archivoSalida("salida.txt", std::ios_base::out | std::ios_base::append);
miLista.mostrar(archivoSalida);
archivoSalida.close();
return 0;
}
Que imprime a un archivo de texto (si le hubiera pasado el flag std::ios_base::binary) seria un archivo de texto binario...
O bien si quiero almacenar todo en un buffer en memoria puedo hacer
#include<sstream>
int main(int argc, char** argv) {
Lista miLista;
std::ostringstream streamMemoria;
miLista.mostrar(streamMemoria);
std::string listaEnMemoriaComoString = streamMemoria.str(); // Aca tengo en un string el contenido de la lista...
return 0;
}
Para almacenar en memoria en un string el contenido de la lista...
Saludos
Pablo