Der Umfang einer statischen Funktion unterscheidet sich von dem einer nicht statischen Mitgliedsfunktion. Sie kann Mitgliedsvariablen und Nicht-Mitgliedsvariablen ohne Objekt aufrufen und darauf zugreifen: 1. Kann nur auf mit statischem Element deklarierte Mitgliedsvariablen zugreifen globale Variablen oder Variablen in anderen Namensräumen.
Umfang statischer C++-Funktionen
Der Umfang statischer Funktionen unterscheidet sich von nicht statischen Memberfunktionen. Es kann sowohl auf Mitglieds- als auch auf Nicht-Mitgliedsvariablen zugreifen und kann ohne Objekt aufgerufen werden.
Zugriff auf Mitgliedsvariablen
In statischen Funktionen kann nur auf Mitgliedsvariablen zugegriffen werden, die mit dem Schlüsselwort static deklariert wurden. Standardmäßig sind Mitgliedsvariablen nicht statisch und können innerhalb statischer Funktionen nicht aufgerufen werden.
Zugriff auf Nicht-Mitgliedsvariablen
Statische Funktionen können auch auf globale Variablen oder Variablen in anderen Namespaces zugreifen.
Instanzen
Hier ist eine Beispielklasse mit einer statischen Funktion:
class Example { public: static int x; // 静态成员变量 static void print_x() { std::cout << x << std::endl; } }; int Example::x = 10; // 静态成员变量的定义 int main() { Example::print_x(); // 可以直接调用静态函数 return 0; }
In diesem Beispiel print_x()
可以在没有创建任何 Example
对象的情况下被调用。函数访问静态成员变量 x
und gibt seinen Wert aus.
Vorteile
Statische Funktionen haben die folgenden Vorteile:
Das obige ist der detaillierte Inhalt vonWelchen Umfang haben statische C++-Funktionen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!