Heu? En fait tu es souvent obligé d'avoir des setters quand même. Et l'histoire ce serait de remplacer:
this->val = val;
par:
m_val = val;
Dans ces setters justement. Perso je verrais de toute façon plutôt un élément du langage genre dans le constructeur:
class Test is
int val1, val2;
@synthesizeMemberAssignment
public Test(int val1, int val2) {}
}
Mais ce n'est pas possible dans aucun des langages dont on parle sans une grosse bidouille. Là où c'est par contre plus discutable, c'est pour les getters. De mémoire, il n'y a que le Java et l'Obj-C qui permettent de créer des méthodes (getters) du même nom qu'une variable. Pour les autres on est emmerdé, donc le préfixe peut se justifier. Mais c'est dommage parce que c'est à cause d'une limitation du langage
