6365Close
ZephOn the 2015-08-30 at 06:14pm
Ça n'est pas que c'est dangereux, c'est juste que le mot-clé friend est fait pour violer volontairement l'encapsulation, c'est à dire ignorer toute notion de membre public, privé & co. Dans certains cas très particuliers comme par exemple quand tu écris des tests unitaires ça peut avoir son intérêt, mais dans le code "de production" je pense qu'il ne faut jamais l'utiliser (ou alors ça ne sert à rien de se prendre la tête, autant tout mettre en public et arrêter de se poser des questions de design).

Ici je suis tout à fait d'accord avec Kevin, je ferais moi aussi une vue immuable sur l'objet "Velo" pour les cas où tu veux permettre de le lire mais pas de le modifier. Beaucoup de langages objet proposent de faire cette vue immuable en passant par des interfaces (par exemple C# ou Java), mais le C++ propose const qui est une façon beaucoup plus concise de faire exactement la même chose (dans ce cas précis ; sinon const est un peu plus que ça), donc autant en profiter smile