Tengo un problema al intentar sobrecargar un operador <<. Consiste en qe no sé generar un string a partir de un array de enteros.
Estoy intentando implementar un clase "conjunto" (ya sé que existen clases similares ya hechas, sólo quiero aprender), y quiero que al hacer
Código C++:
Ver original
cout << miconjunto <<endl
Me muestre el array que contiene los datos del conjunto por pantalla.
Así lo tengo actualmente:
(el array está relleno correctamente).
Código C++:
Ver original
string conjunto::toString(){ int i; string out; for(i=0;i<MAX;i++) { if(this->get(i) == '\0') break; //cout << this->get(i) << endl; out += this->get(i); //out.append(" " + c.get(i)); } return out; } ostream & operator << (std::ostream & stream, conjunto & c) { stream << " [" << c.toString() << "] "; return stream; }
Pero la salida del programa me muestra sólo simbolos extraños y líneas dobles.
Sé que estoy haciendo algo mal en la concatenación, pero no doy con la tecla. A ver si alguien me ilumina un poco.
Saludos