Я хочу создать хеш для класса на основе его производного типа во время компиляции. Сегодня я генерирую это как:
template<class Type>
class TypeBase
{
public:
static const unsigned s_kID;
};
template<class Type>
const unsigned TypeBase<Type>::s_kID = hash(typeid(Type));
но это генерирует (довольно излишне) код инициализации во время выполнения (функция hash (..) выполняет простой хеш на основе std :: type_info :: name ())
Идеи?