Regarding to this code review,是否可以为某个类型分配size_t
?即:
template <size_t N>
struct IntToType {
typedef ??? type; // ???
};
TypeID::value<int>(); // "assigns" 0 to int
IDType<0>::type; // resolves to int
TypeID::value<IDType<0>::type>(); // resolves to 0
我认为通过语言设计这是不可能的,这种递归可能是不可能的,因为它可能取决于编译代码的顺序,但无论如何我都会问。
如果相反的方式有效,可以使用任何其他方式为每种类型定义唯一ID。