Bonsoir,
Je crée deux classes, une Joueur et l'autre ballon, chacune avec un ensembles de caractéristiques (mettez les plus classiques type position, vitesse etc...). Après ce pose deux questions :
1- Personne ne peut toucher le ballon (c.à.d modifier ses caractéristiques) sauf les joueurs (et quelque fois l'arbitre ) donc les attributs du ballon sont privés, et les fonctions appartenant a la classe Joueur et qui modifie le Ballon doive être déclarer en tant que friend dans la classe Ballon. Avez vous une alternative a l'utilisation de friend pour des langages objet qui ne dispose pas de cela?
2- C'est la plus importante, ça concerne l'IA. Je veux que l'IA soit une simple fonction de la classe à qui on fournie un tableau de joueur, et un pointeur vers le ballon, elle détermine ce que doit faire le joueur. Sauf qu'elle doit être différente comme l'est la taille d'un joueur, ou autre. C'est à dire que la fonction a le même nom pour tous comme l'attribut taille est le même nom pour tous. Mais lors de l'instanciation, taille sera mis a 1m86 pour certain 1m70 pour d'autre, tout comme l'IA sera initialisée avec IA_Ronaldhino pour ce joueur et IA_pedretti pour l'autre (que le monde est cruel).
3- Si je déclare un pointeur vers une fonction dans une classe, et que je lui affecte une fonction globale, la fonction pourra-t-elle accéder au champs privés?
Merci
Partager