Spec-Zone.ru › GCC 10 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-10.5.0/cpp/Macros.html

Spec-Zone.ru

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