我正在试验Boost库,并希望将Boost 1.59.0中定义的uint128_t数据类型的值存储到原始int类型中。 uint128_t具有值,比如说0xaf可以适合int。基本上我要做的是:
uint128_t var = 0xaf;
int new_var = var;
我不能直接这样做。无论如何这可以做到吗?我需要将它转换为原始类型,以便我可以将它用作数组的索引。我试过浏览Boost文档,但有点困惑。提前谢谢!
答案 0 :(得分:3)
Boost的number
类有一个转换成员函数模板:
template <class T>
T convert_to()const;
以及显式转换运算符模板,因此static_cast<T>(number)
可能有效,但according to the documentation可以特定于所使用的后端存储类型。