Re: Аттрибуты для полей класса
От: kov_serg Россия  
Дата: 26.03.25 21:12
Оценка: 5 (2) +1
Здравствуйте, tapatoon, Вы писали:

T>Имеем класс вроде такого

T>Менять его описание не можем. Может содержать виртуальные функции, наследоваться в т.ч. виртуально и т.п.
T>Хочу для каждого мембера (для методов не надо) задать пару атрибутов в компайлтайме и когда нужно их получать.
T>Есть идеи как лучше сделать?

Например так: https://godbolt.org/z/c6YWGc58d
struct A {
    string s;
    int i;
};

template<auto>struct Info;
template<>struct Info<&A::s> { enum { id=1 }; static const char* name() { return "string"; } };
template<>struct Info<&A::i> { enum { id=2 }; static const char* name() { return "integer"; } };
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.