- 1
- 2
#define FOR_INCLUSION (iostream) (studio.h) (stdlib.h) (boost/phoenix.hpp) (my_drugs_library.h)
#include <include_and_disable_some_warnings>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+8
#define FOR_INCLUSION (iostream) (studio.h) (stdlib.h) (boost/phoenix.hpp) (my_drugs_library.h)
#include <include_and_disable_some_warnings>
в том смысле, что #include EXPANDMYMACRO сделать можно, а вот DECLARE_MY_5_INCLUDES(); - нет
ну судя по хелпу, BOOST_PP_ITERATE затрагивает непосредственно текущий файл - его же самого рекурсивно перевключая с дополнительными параметрами (редефайня номер итерации и т.д.)
как раз потому, что (как мне всё ещё кажется непреодолимым, т.к. ты меня не разубедил) нельзя внутри макроса написать #include, даже в твоем итерейте приходится делать #include BOOST_PP_ITERATE()
Другой вопрос - нахуя зачем все это? Инклуды в одну строку читаются хуже, чем по одному на строке.
> disable_some_warnings