Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Ключевые слова — это предварительно определенные зарезервированные идентификаторы, имеющие специальные значения. Их нельзя использовать в качестве идентификаторов в программе. Для Microsoft C++ зарезервированы следующие ключевые слова. Имена с символами подчеркивания и именами, указанными для C++/CX и C++/CLI, являются расширениями Майкрософт.
Стандартные ключевые слова C++
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
Ключевое слово, определенное корпорацией __asm Майкрософт, заменяет синтаксис C++ asm .
asm зарезервировано для совместимости с другими реализациями C++, но оно не реализовано. Используется __asm для встроенной сборки в целевых объектах x86. Microsoft C++ не поддерживает встроенную сборку для других целевых объектов.
B Синонимы расширенных операторов являются ключевыми словами, когда /permissive- указано или /Za (отключить расширения языка). Они не являются ключевыми словами при включении расширений Майкрософт.
c Поддерживается при /std:c++20 указании или более поздней версии (например /std:c++latest, при указании).
Ключевые слова C++ для конкретной корпорации Майкрософт
В C++идентификаторы, содержащие два последовательных подчеркивания, зарезервированы для реализаций компилятора. Соглашение Майкрософт должно предшествовать ключевым словам, определенным корпорацией Майкрософт, с двойными подчеркиваниями. Эти слова невозможно использовать как имена идентификаторов.
Расширения Microsoft по умолчанию включены. Чтобы убедиться, что программы полностью переносимы, можно отключить расширения Майкрософт, указав /permissive- параметр или /Za (Отключить расширения языка) во время компиляции. Эти параметры отключают некоторые ключевые слова, относящиеся к Корпорации Майкрософт.
Если расширения Microsoft включены, в программах можно использовать ключевые слова, специфические для систем Microsoft. Для соответствия ANSI эти ключевые слова предустановляются двойным подчеркиванием. Для обратной совместимости поддерживаются версии с одним подчеркиванием многих из ключевых слов с двойным подчеркиванием. Ключевое __cdecl слово доступно без начального подчеркивания.
Ключевое __asm слово заменяет синтаксис C++ asm .
asm зарезервировано для совместимости с другими реализациями C++, но оно не реализовано. Используйте __asm.
Ключевое __based слово имеет ограниченное использование для 32-разрядных и 64-разрядных целевых компиляций.
__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
Встроенная функция, используемая в обработке событий.
E Для обратной совместимости с предыдущими версиями эти ключевые слова доступны как с двумя основными подчеркиваниями, так и с одним ведущим подчеркиванием при включении расширений Майкрософт (по умолчанию).
Ключевые слова Майкрософт в __declspec модификаторах
Эти идентификаторы являются расширенными атрибутами модификатора __declspec . Они считаются ключевыми словами в этом контексте.
Ключевые слова C++/CLI и C++/CX
__abstract
F
__box
F
__delegate
F
__gc
F
__identifier
__nogc
F
__noop
__pin
F
__property
F
__sealed
F
__try_cast
F
__value
F
abstract
Г
array
Г
as_friend
delegate
Г
enum class
enum struct
event
Г
применимо только к управляемые расширения для C++. В настоящее время использование этого синтаксиса не рекомендуется. Для получения дополнительной информации см. Component Extensions for Runtime Platforms.
g Применимо к C++/CLI.
См. также
Лексические соглашения
Встроенные операторы C++, приоритет и ассоциативность