Lien entre deux énumérations

Bonjour.

Je suis en train de réfléchir à une application de suivi de parties d’un jeu de société.

Ce jeu est composé d’une boite de base, puis d’éventuelles extensions. Chaque boite apporte son lot de personnages. Par exemple, la boite de base inclut les personnages A, B et C. La première extension ajoute le personnage D, la deuxième extension le personnage E, etc.

La seule donnée qui m’intéresse pour chaque personnage est son nom.

J’ai donc créé deux énumérations : la première listant tous les personnages, la seconde listant toutes les boites.

Comment puis-je faire le lien entre les deux ? Par exemple, si je veux connaitre tous les personnages de la collection du joueur (s’il possède la boite de base et la première extension par exemple) ?

J’ai pensé ajouter une fonction dans l’énumération des boites qui, selon la valeur de boite passée en paramètre, retourne la liste des personnages. Mais je ne sais pas si c’est la bonne méthode.

Merci.

Bonjour,

Je ne suis pas sûr qu’une enum soit la bonne solution. Une enum est utilisée lorsqu’il y a un nombre fini et déterminé de possibilités. Par exemple, les jours de la semaine, les mois, la liste des codes d’erreur, etc…
Apparemment ton jeu peut avoir de nouveaux personnages avec de nouvelles extensions.

Je partirais plutôt sur une struct pour représenter ton personnage (peut-être mieux qu’une simple string pour des extensions futures) puis des tableaux pour lister les personnages associés à des extensions. Voire peut-être créer une struct pour représenter une extension qui gèrerait en interne le tableau.

Après, ce n’est que mon avis :wink: