Question sur une manière de modéliser mon problème

Question sur une manière de modéliser mon problème - C++ - Programmation

Marsh Posté le 06-11-2006 à 08:46:30    

Bonjour alors voici mon problème de conception :
 Je veux créer une classe Faction qui comprend une donnée sur la couleur et une donnée sur son nom. :
 class Faction
 {
      string couleur;
      string nom;
 }
 Maintenant je ne veux qu'il n'existe que 6 objets factions et pas une de plus. Par exemple les factions A, B, C, D, E, F. On ne peut pas créer d'autre faction.
 
 Comment faire?

Reply

Marsh Posté le 06-11-2006 à 08:46:30   

Reply

Marsh Posté le 06-11-2006 à 09:07:50    

Une hashtable privée de Faction avec un getter public sur une faction identifiée par un entier ?

Reply

Marsh Posté le 06-11-2006 à 09:08:05    

dans un singleton tiens pourquoi pas

Reply

Marsh Posté le 06-11-2006 à 09:08:28    

plutot dans une factory non ?

Reply

Marsh Posté le 06-11-2006 à 09:16:02    

Merci pour ces réponses rapides mais je vois pas comment avec une factory.???

Reply

Marsh Posté le 06-11-2006 à 09:17:47    

Bah tu laisses tomber ta factory

Reply

Marsh Posté le 06-11-2006 à 09:29:46    

ouais peut-être pas vraiment une vrai factory, mais un objet sur lequel tu appelles une méthode qui renvoie une instance de Faction, et qui compte le nombre d'instances "distribuées". Le problème étant bien évidemment de passer aussi par cet objet pour la destruction de l'objet.
 
Le singleton c'est peut-être la solution de facilité, mais c'est vite crade, surtout que le singleton normalement c'est 1 instance, pas 6...

Reply

Marsh Posté le 06-11-2006 à 09:40:19    

Un singleton qui distribue et que gère les 6 instances de Factions, pas "6 singletons"

Reply

Marsh Posté le 06-11-2006 à 09:42:47    

Ah oui, ok, au temps pour moi...

Reply

Marsh Posté le 06-11-2006 à 10:23:59    

Merci pour vos conseils precieux ca fait plaisir.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed