Statische und nichtstatische Methoden

Wenn eine Methode ausschließlich auf static-Elemente ihrer Klasse zugreift, dann kann (und sollte) man sie als static deklarieren:

class A
{
private:

  static int i;

public:

  static void setzei( int neuerwert ) { i = neuerwert; }
};

int A::i = 12;

// ...

  A::setzei( 13 );

Dann kann man solche Methoden (weil sie ja gar keine Daten benutzen, die zu einer bestimmten Instanz gehören) auch einfach über ihren Klassennamen aufrufen, ohne überhaupt ein Objekt der Klasse zu kennen, hier im Beispiel mit A::setzei( 13 ).

Logischerweise kann man in statischen Methoden den Zeiger this (Der Zeiger this) nicht benutzen.

Statische Methoden kennen nur die statischen Elemente einer Klasse, und brauchen kein Objekt zum Aufruf.



AnyWare@Wachtler.de