Salut,
Je code avec un ami un jeu en C++, et nous ne sommes pas d'accord sur un point, du coup on fait appel à votre expertise pour trancher. Notre problème est un sujet récurrent sur les forum, mais à chaque fois la question déclenche souvent des émeutes, j'espère que ça ne sera pas le cas ici . Dans tous les cours de C++ que j'ai pu lire, il est conseillé de mettre tous les attributs en private
et d'éventuellement mettre des getter et setter. Ayant appris la programmation avec Python, je n'ai pas beaucoup de notions en encapsulation. Voici notre classe:
1 2 3 4 5 6 7 8 9 10 11 | class Rect { public: Rect(Position pos, int w, int h); Rect(int x, int y, int w, int h); ~Rect(); Position pos; int w; int h; }; |
Mais Qames (celui avec qui je code le projet) me dit de mettre les attributs en private
et de faire des getter et setter, sous prétexte que c'est plus sécurisé. Mais si le code des accesseurs sont "classiques" c'est à dire T getAttr() { return attr; }
pour le getter et void setAttr(T val) { this->attr = val; }
pour le setter, alors à quoi bon ? Ca revient au même, non ?
Merci d'avance,
AZ et Qames.
PS: Pour une classe aussi simple c'est pas plus facile de faire une struct
?