Dans un projet, je suis amené à écrire une classe Cursor qui contiendra diverses informations sur la position courante du curseur de la souris.
Elle sera utilisée au sein d´une classe Jeu, qui se chargera nottament de faire le lien avec le framework pour récupérer les informations sur la souris grâce aux fonctions appropriées afin de mettre à jour les paramètres de l´objet Cursor.
Pour ce faire, je pensais avoir recours à une fonction membre "SetX(...)" etc... le problème c´est que cette fonction sera alors accessible par n´importe qui (on pourra ainsi modifier la possition de la souris indépendement d´un évènement lié)
Comment faire pour contourner ce problème ?
Autrement dire disposer d´une interface générale permettant simplement de récupérer les infos du Cursor, avec "GetX()", sans pouvoir les modifier avec "SetX(...)...", pour n´importe quel utilisateur, et disposer d´une interface permettant à la classe Jeu de mettre à jour les infos de la souris ?
Utiliser :
class Cursor
{
friend class Jeu;
public:
int GetX();
// ...
}
Me semble la meilleure solution, mais le friend me gêne...