Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpPpPs 487 of 696 menu
◀ ▶

Склейка лексем в макросе в C++

Склейка лексем в теле макроса выполняется оператором ##: препроцессор сливает два соседних фрагмента в один токен.

Результат должен быть корректным идентификатором или числом, иначе следующий этап сборки выдаст ошибку. Запишем макрос, формирующий имя поля, и выведем значение:

#define FIELD(name) val_##name #include <iostream> int main() { int FIELD(x) = 6; std::cout << val_x << "\n"; return 0; }

Задайте #define MK(n) item_##n. Объявите int MK(a) = 3 и выведите item_a.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить