Problema c++

Z

He sobrecargado el operador de insercion en la clase Pedido

std::ostream& operator<<(std::ostream s,const Pedido& p);

y en la clase Pedido_Articulos,tengo este metodo

std::ostream& Pedido_Articulo::mostrarDetallePedidos(std::ostream& s){
for(std::map<Pedido*, ItemsPedido, OrdenaPedidos>::const_iterator it=pi.begin();it!=pi.end();++it){
		s<<(*it->first);//aqui esta el error
	}
	return s;
}

Pero el compilador me dice"pedido.h:44:15: error: argumento de inicialización 1 de ‘std::ostream& operator<< (std::ostream, const Pedido& )’" y no se que pasa :(

r2d2rigo

Tienes que declarar la sobrecarga como

std::ostream& operator<<(std::ostream &s,const Pedido& p);
1 1 respuesta
Z

#2 gracias,que despiste ,estoy acostumbrado a java y tonterias de estas me pasan bastante

Usuarios habituales