如何在编译时确定这件事?
我想在编译时确定int64_t的确是64位,否则就死出去。如何做到这点?好像可以用模板?
[解决办法]
C++11有static_assert。编译期的。
[解决办法]
static_assert(sizeof(int64_) == 8, "int64_ should equal to 64bits\n");
[解决办法]
static_assert(8 == sizeof(int64_t)) ?
[解决办法]
static_assert 就是干这事儿的。编译器不支持的话,可以用类似的模板技术,根据 int64_t 的大小生成编译错误。