structures simples : services or not services
[EDIT] Cette discussion est un fork de Relecture de code d'un jeu RPG afin d'éviter le mélange de débats tous deux intéressants. N'hésitez pas à continuer à répondre aux deux discussions séparément
Mais pourquoi diantre cacher (et non encapsuler parce que c'est une notion qui n'a rien à voir ici) les attributs d'une classe Position ???
Code:
1 2 3 4 5 6 7 8 9 10
|
class Postition {
public:
Postition( const int x, const int y );
const int PosX() const { return m_x; }
const int PosY() const { return m_y; }
private:
const int m_x;
const int m_y;
}; |
Cette classe est absurde... je crois que ça s'appelle la maladie des getters...
Code:
1 2 3 4
| struct Position
{
int x, y;
}; |
Ce code est à la fois plus simple, plus concis, plus maniable, et offre plus de possibilités.
Un simple const Position suffit à avoir la même chose que ce que tu fais, sans nécessiter de modification de Position :
Code:
1 2 3 4 5
|
const Position b {3, 3};
Position a {1, 1};
a = b;
b = a;//! interdit par choix du programmeur, s'il fait ceci c'est une erreur d'inatention le compilo va le lui signaler. |