我试图获得一个位域的大小。
例如,我有一个通用句柄:
template<size_t n, size_t m>
struct handle
{
uint32 index : n;
uint32 validation : m;
}
现在我想得到会员的大小。
我发现了一个宏,当我有一个handle<16, 16>
时可以使用,并将所需的成员扩展为sizeof
。在这种情况下,如果我传入index
成员,我会得到16
作为输出。
但是我必须传递输出变量。
有没有办法让一些模板魔法直接扩展到所需的数字?所以我可以通过sizeof_bit(class, member)
并获得此会员的sizebit
大小?