Макрос FOR_EACH препроцессора, совместимый с MSVC ++ 10

Мы видели несколько вопросов, требующих вариацииFOR_EACH макро. Однако, к сожалению, предоставленные ответы несовместимы с VC ++ 10, так как он расширяет __VA_ARGS __ в качестве одного аргумента при передаче другому макросу. Пожалуйста, кто-нибудь может предоставить C ++ 11-совместимую (следовательно, совместимую с версией) версию, которая все еще работает с VC ++ 10. Возможно, используяобходной путь» это часто упоминается,#define EXPAND(x) xОднако я нене знаю, где это поставить, чтобы получить, например, последнюю обобщенную частьэтот ответ работать в VC ++ 10.

Чтобы уточнить, предполагаемое поведение дляFOR_EACH(x, a, b, ...) производитьx(a) x(b), ...где х другой макрос.

Ответы на вопрос(1)

Ваш ответ на вопрос