Вопрос по идентификации типа (не RTTI)
От: niralex  
Дата: 06.04.19 08:53
Оценка:
Есть некий конечный набор пользовательских типов и задача их идентифицировать во время выполнения не используя RTTI.
Для не шаблонных типов это может выглядеть так:

using TypeId = const char *;
struct MyType1{
static constexpr TypeId Id(){
return "1";
}
};
struct MyType2{
static constexpr TypeId Id(){
return "2";
}
};


А как быть с шаблонными типами при условии чтобы функция MyType3::Id() оставалась constexpr

template<typename T>
struct MyType3 {
static constexpr TypeId Id(){
// return ?
}
};


Тип идентификатора TypeId не важен. Варианты без constexpr известны.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.