我使用了boost multiprecision库,更确切地说是boost :: multiprecision :: float128类型。使用ICPC进行编译时,我在尝试执行以下操作时遇到了一些错误:
double a = functionA();
其中functionA()返回一个boost :: multiprecision :: float128变量。
error: no suitable conversion function from "boost::multiprecision::float128" to "double" exists|
我该如何解决这个问题?
答案 0 :(得分:11)
来自Boost文档:
可以通过convert_to成员函数将数字转换为任何内置类型:
mpz_int z(2);
double i = z.convert_to<double>(); // sets i to 2