Использование литерального вектора в качестве макропараметра - PullRequest
0 голосов
/ 11 июля 2019
#define vectorDec(set) std::vector<int> vec = set;
vectorDec({1,2,3,4})

Этот способ использования макросов сбивает с толку компилятор:

error: macro "vectorDec" passed 4 arguments, but takes just 1 vectorDec({1,2,3,4})


error: ‘vectorDec’ does not name a type vectorDec({1,2,3,4})

Вопрос в том, почему компилятор решил, что один параметр - вектор - это 4 параметра (количество элементов в векторе)? Есть ли способ передать буквальный вектор? (Я бы хотел избежать использования списков va)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...