Bonjour à tous !
J'aimerais utiliser un set pour stocker des objets, mais définir moi-même les opérateur d'égalité et de comparaison que le set utilisera, idéalement les opérateurs == et < de ma classe.
J'ai vu qu'il est possible de passer le "comparateur" à la création du set, mais même en surchargeant l'opérateur == pour ma classe, le set continue d'uiliser l'égalité "par défaut" (ie il compare tout, et moi j'aimerais qu'il se base uniquement sur un des attributs de la classe) pour savoir s'il contient déjà un objet ou non.
Comment puis-je faire pour utiliser mon propre opérateur d'égalité ? Je pensais que c'était "comme en Java", c'est-à-dire qu'il suffit de redéfinir l'opérateur d'égalité pour une classe pour ce que soit celui-ci qui est utilisé dans tous les cas. Mais à voir non ?
Merci d'avance, et n'hésitez pas à me demander des précisions si je n'ai pas été clair !
Partager