Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: <<<-Basura->>> en 11 Junio 2013, 21:31 pm



Título: Sobrecargar el operador <<
Publicado por: <<<-Basura->>> en 11 Junio 2013, 21:31 pm
Bueno he creado un clase que se llama Socket, lo que necesito es sobrecargar el operador << en esta clase:

Código
  1. Socket &Socket::operator<<(const string&){
  2. //this->sender->Send(string);
  3. }
  4.  

Quiero que se pueda usar de esta manera:
Código
  1. Socket s;
  2. s<<"Esto es un ejemplo";
  3.  

Quisiera saber si esto es posible


Título: Re: Sobrecargar el operador <<
Publicado por: amchacon en 11 Junio 2013, 22:04 pm
Hombre claro, sin ir más lejos el printf de C++ es este:

Código
  1. cout<<"Cosita linda y hermosa";

Aunque eso no sería un string sino un const char*. Por eso quizás te falle.


Título: Re: Sobrecargar el operador <<
Publicado por: <<<-Basura->>> en 11 Junio 2013, 22:12 pm
No funciona, me pide retornar un valor y si lo pongo como void me da error


Título: Re: Sobrecargar el operador <<
Publicado por: amchacon en 11 Junio 2013, 22:21 pm
No funciona, me pide retornar un valor y si lo pongo como void me da error
Tal y como lo has declarado, debe devolver:
Código
  1. return *this;



Título: Re: Sobrecargar el operador <<
Publicado por: <<<-Basura->>> en 11 Junio 2013, 22:38 pm
Ya lo logre declarar, gracias