Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
_stanislav
Рука
25 / 77 / 26
Регистрация: 16.08.2014
Сообщений: 517
Завершенные тесты: 2
#1

макрос COMBINE - C++

18.01.2016, 15:53. Просмотров 164. Ответов 2
Метки нет (Все метки)

Доброго времени суток. Дан код:

C++
1
2
3
4
5
#define SUFFIX                5
#define COMBINE(a,b)       COMBINE1(a,b)
#define COMBINE1(a,b)      a##b
 
#define I_DELEGATE         COMBINE(IDelegate, SUFFIX)
И пояснение (статья тут - https://rsdn.ru/article/cpp/delegates.xml)
Обратите внимание на использование вспомогательного макроса COMBINE1. Если напрямую реализовать макрос COMBINE как #define COMBINE(a,b) a##b, то результатом подстановки COMBINE(IDelegate, SUFFIX) будет "IDelegateSUFFIX". А это совсем не то, что мы хотим получить. Поэтому использование COMBINE1 в данном случае необходимо.

Вопрос, почему компилятор не может сразу подставить вместо "SUFFIX" "5"?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2016, 15:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос макрос COMBINE (C++):

Если макрос на VBA переписать на С++, то макрос станет работать быстрее? - C++
Всем привет!) У меня есть макрос написанный в Екселе на VBA, если его переписать на С++ , то макрос станет работать быстрее? ...

Макрос - C++
Как в макросе интовское число разделить на число с запятой?

Макрос на с++ - C++
Здравствуйте, надо разработать макрос type(x,y) который объявляет x как некий тип с именем y.

Макрос TRACE - C++
Здорова! Часто вижу в коде TRACE, но что то ничего не пойму что он делает, вот есть код: #include <iostream> using std::cout; ...

Макрос DPrint - C++
С предыдущим я заданием я уже разобрался, а вот со следующим: "Напишите макрос DPrint , проверяющий наличие режима отладки, и если режим...

Макрос MyAssert - C++
Всем привет! Снова обращаюсь к вам за помощью. Задание такое: "Напишите макрос MyAssert, который выводит сообщение об ошибке, имя файла...

2
rikimaru2013
C++ Game Dev
2438 / 1132 / 240
Регистрация: 30.11.2013
Сообщений: 3,688
18.01.2016, 16:43 #2
_stanislav, https://github.com/isocpp/CppCoreGui...t-manipulation
1
Evg
Эксперт CАвтор FAQ
18026 / 6258 / 427
Регистрация: 30.03.2009
Сообщений: 17,193
Записей в блоге: 27
18.01.2016, 18:26 #3
http://www.cyberforum.ru/faq/thread55559-page7.html#post2356359
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.01.2016, 18:26
Привет! Вот еще темы с ответами:

Таинственный макрос - C++
Здравствуйте, в исходники nginx (веб-сервер) есть такой макрос: int ngx_cdecl main(int argc, char *const *argv) { //...некий...

Сложный макрос - C++
В книге была задача, написать макрос, определяющий массив типа Type, который называется Name, имеет Number элементов, и все элементы...

Не работает макрос - C++
в лабораторной работе у меня надо написать макрос: создать макроопределение (некий PRINT_TYPE) в зависимости от которого новосозданная...

Реализуйте макрос - C++
Реализуйте макрос MAX от трёх параметров, который присваивает целочисленной (int) переменной, переданной в качестве третьего аргумента,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru