Ostatnio pisząc w Visual C++ przyzwyczaiłem się wszędzie odnosić się do składowych klasy przez wskaźnik this np.
class A
{
private:
int i;
public:
A();
void ustawWypisz(int j);
void wypisz();
};
A::A()
{
this->i = 0;
}
void A::wypisz()
{
cout << this->i << endl;
}
void A::ustawWypisz(int j)
{
this->i = j;
this->wypisz();
if(j < 100)
this->ustawWypisz(this->i+1);
}
W Visual C++ pisze się tak wygodnie, gdyż po wpisaniu "this->" pojawia się lista, z której można składową, do której się odwołujemy. Ponadto jest to bardziej przejrzyste, gdyż od razu w kodzie widać, które zmienne i funkcje są składowymi klasy, a które są zmiennymi lokalnymi.
Ponieważ jednak na necie rzadko spotyka się w ten sposób pisany kod - zacząłem się zastanawiać czy takie pisanie kodu nie jest "bad habit" i czy nie niesie to za sobą jakiś niebezpieczeństw np. w odniesieniu do funkcji wirtualnych, wskaźników czy innych...
Nie znalazłem na forum takiej dyskusji, więc zakładam ten temat z zapytaniem o Wasze opinie.