// guarda listas cuyos elementos implementan guardar() void Teatro :: guardarListaDeGuardables(const Lista & li, std::ostream & os) const { os << "["; int i = 0; while(i < li.longitud() - 1) { li.iesimo(i).guardar(os); os << ","; i++; } if (i < li.longitud) { os << li.iesimo(i); } os << "]"; } // guarda un teatro void Teatro :: guardar (std::ostream & os) const { char cab = ENCABEZADO_ARCHIVO; os << "(" << cab << " "; guardarListaDeGuardables(salas,os); os << " "; // guardo la lista del elenco estable y sus sueldos // lo hago aca porque Int no implementa guardar() os << "["; int i = 0; while (i < elenco.longitud() - 1) { os << elenco.iesimo(i) << "," << sueldos.iesimo(i) << ","; i++; } if (i < elenco.longitud()) { os << elenco.iesimo(i) << "," << sueldos.iesimo(i); } os << "]"; os << " "; guardarListaDeGuardables(funciones,os); os << " "; guardarListaDeGuardables(entradas,os); os << ")"; }