C++-Bezeichner
Ein Bezeichner ist eine Folge von Zeichen zur Angabe folgender Elemente:
Objekt- oder Variablenname
Klassen-, Struktur- oder Unionsname
Name des enumerierten Typs
Member einer Klasse, Struktur, Union oder Enumeration
Funktion oder Klassenmemberfunktion
typedef-Name
Bezeichnungsname
Makroname
Makroparameter
Die folgenden Zeichen können als erstes Zeichen eines Bezeichners oder als beliebiges darauf folgendes Zeichen verwendet werden:
_ a b c d e f g h i j k l m
n o p q r s t u v w x y z
A B C D E F G H I J K L M
N O P Q R S T U V W X Y Z
Die folgenden Zeichen können als beliebiges Zeichen in einem Bezeichner verwendet werden, außer als erstes Zeichen:
0 1 2 3 4 5 6 7 8 9
Microsoft-spezifisch
Nur die ersten 2048 Zeichen aus Microsoft C++-Bezeichnern sind signifikant. Namen für benutzerdefinierte Typen werden vom Compiler "ergänzt", damit die Typinformationen beibehalten werden. Der resultierende Name, einschließlich der Typinformationen, darf nicht länger als 2048 Zeichen sein. (Weitere Informationen finden Sie unter Ergänzte Namen.) Folgende Faktoren können die Länge eines ergänzten Bezeichners beeinflussen:
Gibt an, ob der Bezeichner ein Objekt eines benutzerdefinierten Typs angibt oder einen von einem benutzerdefinierten Typ abgeleiteten Typ.
Gibt an, ob der Bezeichner eine Funktion angibt oder einen von einer Funktion abgeleiteten Typ.
Die Anzahl von Argumenten für eine Funktion.
Das Dollarzeichen ist auch ein gültiger Bezeichner in Visual C++.
// dollar_sign_identifier.cpp
struct $Y1$ {
void $Test$() {}
};
int main() {
$Y1$ $x$;
$x$.$Test$();
}
END Microsoft-spezifisch
Das erste Zeichen eines Bezeichners muss ein Buchstabe des Alphabets (Großbuchstabe oder Kleinbuchstabe) oder ein Unterstrich (_) sein. Da bei C++-Bezeichnern die Groß- und Kleinschreibung berücksichtigt wird, unterscheidet sich fileName von FileName.
Für Bezeichner muss eine andere Schreibweise gewählt werden als für Schlüsselwörter. Bezeichner, die Schlüsselwörter enthalten, sind gültig. Beispielsweise ist Pint ein gültiger Bezeichner, obwohl das Schlüsselwort int enthalten ist.
Die Verwendung von zwei aufeinander folgenden Unterstrichen (__) am Anfang eines Bezeichners oder eines einzelnen vorangestellten Unterstrichs, gefolgt von einem Großbuchstaben, ist C++-Implementierungen in allen Bereichen vorbehalten. Sie sollten es vermeiden, einen einzelnen vorangestellten Unterstrich gefolgt von einem Kleinbuchstaben für Dateibereiche zu verwenden, da Konflikte mit aktuellen oder zukünftigen reservierten Bezeichnern auftreten können.