Statische Speicherklassenspezifizierer

Die statischen Speicherklassenspezifizierer, statisch und extern, können auf Objekte und Funktionen angewendet werden.Die folgende Tabelle zeigt, wo die Schlüsselwörter static und extern nicht verwendet werden können. Außerdem können.

Verwendung von statischen Methoden und extern

Konstrukt

Können statisch

Stellen Sie verwenden?

Kann extern

Stellen Sie verwenden?

Funktionsdeklarationen innerhalb eines Blockes

Nein

Ja

Formale Argumente an eine Funktion

Nein

Nein

Objekte in einem Block

Ja

Ja

Objekte außerhalb eines Blocks

Ja

Ja

Funktionen

Ja

Ja

Klassenmember Funktionen

Ja

Nein

Klassenmember von Daten

Ja

Nein

typedef Namen

Nein

Nein

Ein Name, der mit dem Schlüsselwort angegeben wird, hat static interne Bindung mit Ausnahme der statischen Member einer Klasse, die auf externe Bindung verfügen.Das bedeutet, dass sie nicht außerhalb der aktuellen Übersetzungseinheit sichtbar.Ein Name, der mit dem Schlüsselwort angegeben wird, hat extern externe Bindung, es sei denn, der zuvor definiert, als seien ihre interne Bindung.Weitere Informationen zur Sichtbarkeit von Namen finden Sie unter Bereich und Programmieren und Bindung.

HinweisHinweis

Funktionen, die als inline-Klassenmember nicht deklariert werden und die Funktionen sind, sind die gleichen Eigenschaften von Funktionen angegeben, die als staticdeklariert hat.

Ein Klassenname, dessen Deklaration noch nicht vom Compiler erkannt wurde, kann in einer extern Deklaration verwendet werden.Der Name, der mit einer solchen Deklaration eingegebene kann nicht verwendet werden, wenn die Klassendeklaration aufgetreten ist.

Siehe auch

Referenz

Speicherklassenspezifizierer