Spec-Zone.ru › GCC 11 CPP

Далее: Условные операторы, Предыдущее: Файлы заголовков [Оглавление][Указатель]

3 Макросы ¶

Макрос — это фрагмент кода, которому присвоено имя. Всякий раз, когда используется имя, оно заменяется содержимым макроса. Существует два типа макросов. Они в основном различаются тем, как они выглядят при использовании. Объектно-подобные макросы при использовании напоминают объекты данных, а функционально-подобные макросы — вызовы функций.

Вы можете определить любой допустимый идентификатор как макрос, даже если это ключевое слово языка C. Предпроцессор ничего не знает о ключевых словах. Это может быть полезно, если вы хотите скрыть ключевое слово, такое как const, от более старого компилятора, который его не понимает. Однако оператор предпроцессора defined (см. Определено) никогда не может быть определен как макрос, а именованные операторы C++ (см. Именованные операторы C++) не могут быть макросами при компиляции кода на C++.

  • Объектно-подобные макросы
  • Функционально-подобные макросы
  • Аргументы макроса
  • Преобразование в строку
  • Конкатенация
  • Многоаргументные макросы
  • Предопределенные макросы
  • Удаление и повторное определение макросов
  • Директивы внутри аргументов макроса
  • Ловушки при работе с макросами

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-11.4.0/cpp/Macros.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API