Передать вариадик параметры в макрос
От: Went  
Дата: 02.10.15 08:48
Оценка:
Здравствуйте. У меня снова вопрос для самых маленьких.
Есть некий вариадик-шаблонный класс, который по концовке записывается макросом. Ну, так уж сложилось
Мне нужно прокинуть множество параметров этого класса через аргументы макроса. Возможно ли это сделать без boost.preprocessor?
template<typename... Args>
class Some;

#define mymacros(params) .... // Тут нужно что-то определить.

mymacros(<int, float>);   // Не работает, распадается на "<int" и "float>"
mymacros((<int, float>)); // Могло бы работать, но некрасиво и не понятно что потом делать со скобками?
mymacros((int)(float));      // Работает, но требует boost.preprocessor.
Re: Передать вариадик параметры в макрос
От: wander  
Дата: 02.10.15 09:19
Оценка: 6 (1) +1
Здравствуйте, Went, Вы писали:

W>Мне нужно прокинуть множество параметров этого класса через аргументы макроса. Возможно ли это сделать без boost.preprocessor?


https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html
Не?
Re[2]: Передать вариадик параметры в макрос
От: Went  
Дата: 02.10.15 09:32
Оценка:
Здравствуйте, wander, Вы писали:
W>https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html
W>Не?
Да! Пасиба! Я просто думал, что вариадик макросы стандартны только в С.
Re[3]: Передать вариадик параметры в макрос
От: Evgeny.Panasyuk Россия  
Дата: 02.10.15 10:22
Оценка:
Здравствуйте, Went, Вы писали:

W>Здравствуйте, wander, Вы писали:

W>>https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html
W>>Не?
W>Да! Пасиба! Я просто думал, что вариадик макросы стандартны только в С.

Официально они появились в ISO C++11, а по факту были даже в более старых компиляторах, в том числе у MSVC.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.