Bonjour à tous et à toutes
Ce code ne fonctionne pas chez moi :
enum NetDataType
{
Error,
Done
};
EncryptedPacket : public Packet
{
};
EncryptedPacket& operator <<(EncryptedPacket& packet,const NetDataType& d)
{
packet << d;
}
main()
{
EncryptedPacket packet;
NetDataType data;
data = Error;
packet << data;
}
Petites explications : Si je ne mets pas l'operator<<, on me dit que l'operator << n'est pas surchargé pour les NetDataType. J'ai donc fait ceci, mais ça crée une boucle infini. J'ai changé packet << d pour packet << static_cast<int>(d) et pu de problème. Seulement, lorsque j'arrive avec l'operator >>, je ne peux pas faire ça parce que ça dit qu'il y a ambiguïté avec l'operator >> int de Packet...
J'ai donc aucune solution pour mettre des enums dans les packet...
Merci et bonne journée