C-Programmierung

Statische Methoden

Statische Komponenten | | This-Zeiger

Statische Methoden sind Methoden, die keinen Zugriff auf ein konkretes Objekt benötigen, sie können lediglich auf statische Komponenten zugreifen, die sich alle Objekte teilen. Sie können daher ohne den . aufgerufen werden (aber mit dem voll qualifizierten Namensraum). Sie verändern keine Objekte und verhalten Sich daher für alle Objekte einer Klasse gleich.

Beispiel:

class Object
{
public:

   static int getNumberOfInstances()
   {
      return(count);
   }

   Object()
   {
      count++;
   }

   ~Object()
   {
      count--;
   }

protected:

   static int count = 0; // counts number of actual instances of class "Object"
};



Object a;
Object b;
Object c;

std::cout << "There are "
          << Object::getNumberOfInstances() // evaluates to 3 instances
          << "instances of class "Object""
          << std::endl;


Statische Komponenten | | This-Zeiger

Options: