Как объединить параметр с двоеточиями в макросе? - PullRequest
0 голосов
/ 26 апреля 2019

Я хочу написать макрос, который генерирует вектор с именем, состоящим из имени + тип.Итак, GEN_NAME_TYPE_MEMBER(int, Id) должно сгенерировать vector<int> vec_Id_int.GEN_NAME_TYPE_MEMBER(std::string, FName) должен сгенерировать vector<int> vec_Id_string.

Следующий макрос почти делает это, но не работает при наличии двоеточий

#define GEN_NAME_TYPE_MEMBER(Name, Type)
    std::vector<Type> vec_##Name_##Type;

НАЧАЛЬНОЕ РЕШЕНИЕ

переместить Type в начало имени

 #define GEN_NAME_TYPE_MEMBER(Name, Type)
        std::vector<Type> Type##_##Name_vec;

Есть ли способ поставить в конце имени?

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