Boost
C++ Libraries
...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
This version of Boost is under active development. You are currently in the develop branch. The current version is 1.90.0.
The special functions, distributions, constants and tools in this library can be used with a number of high-precision libraries, including:
The last four have some license restrictions; only Boost.Multiprecision
when using the cpp_float backend
can provide an unrestricted Boost
license.
At present, the price of a free license is slightly lower speed.
Of course, the main cost of higher precision is very much decreased (usually at least hundred-fold) computation speed, and big increases in memory use.
Some libraries offer true arbitrary-precision
arithmetic where the precision is limited only by available memory
and compute time, but most are used at some arbitrarily-fixed precision, say
100 decimal digits, like Boost.Multiprecision
cpp_dec_float_100.
Boost.Multiprecision can operate in both ways, but the most popular choice is likely to be about a hundred decimal digits, though examples of computing about a million digits have been demonstrated.