Identyfikatory C++
Identyfikator jest sekwencja znaków używany do oznaczania jedną z następujących czynności:
Nazwa obiektu lub zmienna
Klasy, struktury lub nazwa Unii
Nazwa typu tekstu stałego
Członek klasy, struktury, Unii lub wyliczanie
Funkcja lub funkcji składowej klasy
Nazwa elementu TypeDef
Nazwa etykiety
Nazwa makra
Parametr makra
Następujące znaki są prawnej jako pierwszy znak identyfikatora lub każdy kolejny znak:
_ 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
Prawne jak dowolny znak w identyfikatorze oprócz pierwszego są następujące znaki:
0 1 2 3 4 5 6 7 8 9
Programu Microsoft
Tylko pierwszy 2048 znaków identyfikatorów Microsoft C++ są znaczne.Nazwy typów zdefiniowanych przez użytkownika są "zdobione" przez kompilator, aby zachować informacje o typie.Nazwa wynikowego, łącznie z informacjami typu nie może być dłuższy niż 2048 znaków.(Zobacz Nazwy zdobione Aby uzyskać więcej informacji.) Czynniki, które mogą mieć wpływ na długość identyfikatora dekoracyjną są:
Czy identyfikator oznacza obiekt zdefiniowany przez użytkownika lub typu pochodząca z typ zdefiniowany przez użytkownika.
Czy identyfikator oznacza funkcję lub typ pochodząca z funkcją.
Liczba argumentów funkcji.
Znak dolara jest również prawidłowym identyfikatorem języka Visual C++.
// dollar_sign_identifier.cpp
struct $Y1$ {
void $Test$() {}
};
int main() {
$Y1$ $x$;
$x$.$Test$();
}
KONIEC Microsoft szczególne
Pierwszy znak identyfikatora musi być znak alfabetu, wielkich lub małych liter, lub znaku podkreślenia ( _ ).Ponieważ identyfikatorów języka C++ jest uwzględniana wielkość liter, fileName różni się od FileName.
Identyfikatory nie może być dokładnie tę samą pisownię i przypadku jako słowa kluczowe.Identyfikatory, zawierające słowa kluczowe są prawnych.Na przykład Pint jest identyfikator prawne, nawet jeśli zawiera on int, który jest słowem kluczowym.
Użyj dwóch znaków podkreślenia sekwencyjnych ( __ ) na początku identyfikator lub pojedynczym znakiem podkreślenia wiodących następuje litera jest zarezerwowana dla implementacji języka C++ w wszystkie zakresy.Należy unikać przy użyciu jednego podkreślenia, a następnie przez małe litery nazw z zakresu pliku z powodu możliwych konfliktów z obecnego lub przyszłego identyfikatory zarezerwowane.