Al limite, per evitare problemi con il nome di membri riservati, eviterei _ e __ ma si può usare il prefisso m_ per "member" ...
Ognuno fa come vuole ma è opinione di molti che questo metodo genera meno problemi ...
The 'm' prefix also avoids the (IMHO) ugly and wordy "this->" notation, and the inconsistency that it guarantees (even if you are careful you'll usually end up with a mixture of 'this->data' and 'data' in the same class, because nothing enforces a consistent spelling of the name).
'this' notation is intended to resolve ambiguity - but why would anyone deliberately write code that can be ambiguous? Ambiguity will lead to a bug sooner or later. And in some languages 'this' can't be used for static members, so you have to introduce 'special cases' in your coding style. I prefer to have a single simple coding rule that applies everywhere - explicit, unambiguous and consistent
.... e io sono d'accordo (è una mia opinione, derivante dall'esperienza e dalla pratica, non dallo standard).