Słowa kluczowe (C++)
Słowa kluczowe to wstępnie zdefiniowane identyfikatory zarezerwowane, które mają specjalne znaczenie. Nie można ich używać jako identyfikatorów w programie. Następujące słowa kluczowe są zarezerwowane dla języka Microsoft C++. Nazwy z wiodącymi podkreśleniami i nazwami określonymi dla języków C++/CX i C++/CLI są rozszerzeniami firmy Microsoft.
Słowa kluczowe języka C++ w warstwie Standardowa
alignas
alignof
and
b
and_eq
b
asm
a
auto
bitand
b
bitor
b
bool
break
case
catch
char
char8_t
c
char16_t
char32_t
class
compl
b
concept
c
const
const_cast
consteval
c
constexpr
constinit
c
continue
co_await
c
co_return
c
co_yield
c
decltype
default
delete
do
double
dynamic_cast
else
enum
explicit
export
c
extern
false
float
for
friend
goto
if
inline
słowo kluczowe specyficzne dla __asm
firmy Microsoft zastępuje składnię języka C++ asm
. asm
jest zarezerwowana w celu zachowania zgodności z innymi implementacjami języka C++, ale nie jest zaimplementowana. Służy __asm
do wbudowanego zestawu na celach x86. Język Microsoft C++ nie obsługuje wbudowanego zestawu dla innych obiektów docelowych.
b Synonimy operatora rozszerzonego są słowami kluczowymi po /permissive-
określeniu lub /Za
(Wyłącz rozszerzenia języka). Nie są to słowa kluczowe, gdy rozszerzenia firmy Microsoft są włączone.
c Obsługiwane, gdy /std:c++20
określono wartość lub nowszą (np /std:c++latest
. ) .
Słowa kluczowe języka C++ specyficzne dla firmy Microsoft
W języku C++identyfikatory zawierające dwa kolejne podkreślenia są zarezerwowane dla implementacji kompilatora. Konwencja firmy Microsoft ma poprzedzać słowa kluczowe specyficzne dla firmy Microsoft z podwójnymi podkreśleniami. Tych słów nie można używać jako nazw identyfikatorów.
Rozszerzenia firmy Microsoft są domyślnie włączone. Aby upewnić się, że programy są w pełni przenośne, można wyłączyć rozszerzenia firmy Microsoft, określając /permissive-
opcję lub /Za
(Wyłącz rozszerzenia językowe) podczas kompilacji. Te opcje wyłączają niektóre słowa kluczowe specyficzne dla firmy Microsoft.
Po włączeniu rozszerzeń firmy Microsoft możesz użyć słów kluczowych specyficznych dla firmy Microsoft w programach. W przypadku zgodności ze standardem ANSI słowa kluczowe są poprzedzone podwójnym podkreśleniem. W przypadku zgodności z poprzednimi wersjami obsługiwane są wersje pojedynczego podkreślenia wielu słów kluczowych ze podkreśleniami podwójnymi. Słowo __cdecl
kluczowe jest dostępne bez wiodącego podkreślenia.
Słowo __asm
kluczowe zastępuje składnię języka C++ asm
. asm
jest zarezerwowana w celu zachowania zgodności z innymi implementacjami języka C++, ale nie jest zaimplementowana. Użyj witryny __asm
.
Słowo __based
kluczowe ma ograniczone zastosowania do kompilacji docelowych 32-bitowych i 64-bitowych.
__alignof
e
__asm
e
__assume
e
__based
e
__cdecl
e
__declspec
e
__event
__except
e
__fastcall
e
__finally
e
__forceinline
e
__hook
d
__if_exists
__if_not_exists
__inline
e
__int16
e
__int32
e
__int64
e
__int8
e
__interface
__leave
e
__m128
d Funkcja wewnętrzna używana w obsłudze zdarzeń.
e Aby uzyskać zgodność z poprzednimi wersjami, te słowa kluczowe są dostępne zarówno z dwoma wiodącymi podkreśleniami, jak i jednym wiodącym podkreśleniem, gdy rozszerzenia firmy Microsoft są włączone (ustawienie domyślne).
Słowa kluczowe firmy Microsoft w modyfikatorach __declspec
Te identyfikatory są atrybutami rozszerzonymi modyfikatora __declspec
. Są one uważane za słowa kluczowe w tym kontekście.
Słowa kluczowe C++/CLI i C++/CX
__abstract
f
__box
f
__delegate
f
__gc
f
__identifier
__nogc
f
__noop
__pin
f
__property
f
__sealed
f
f Dotyczy tylko rozszerzeń zarządzanych dla języka C++. Ta składnia jest teraz przestarzała. Aby uzyskać więcej informacji, zobacz Rozszerzenia składników dla platform środowiska uruchomieniowego.
g Dotyczy języka C++/interfejsu wiersza polecenia.
Zobacz też
Konwencje leksykalne
Wbudowane operatory, pierwszeństwo i kojarzenie języka C++