Literals Support
The following literals are offered to construct each of the types:
#include <boost/decimal/literals.hpp>
namespace boost {
namespace decimal {
constexpr auto operator "" _DF(const char* str) -> decimal32_t
constexpr auto operator "" _df(const char* str) -> decimal32_t
constexpr auto operator "" _DF(unsigned long long v) -> decimal32_t
constexpr auto operator "" _df(unsigned long long v) -> decimal32_t
constexpr auto operator "" _DD(const char* str) -> decimal64_t
constexpr auto operator "" _dd(const char* str) -> decimal64_t
constexpr auto operator "" _DD(unsigned long long v) -> decimal64_t
constexpr auto operator "" _dd(unsigned long long v) -> decimal64_t
constexpr auto operator "" _DL(const char* str) -> decimal128_t
constexpr auto operator "" _dl(const char* str) -> decimal128_t
constexpr auto operator "" _DL(unsigned long long v) -> decimal128_t
constexpr auto operator "" _dl(unsigned long long v) -> decimal128_t
// ----- Fast Type Literals -----
constexpr auto operator "" _DFF(const char* str) -> decimal_fast32_t
constexpr auto operator "" _dff(const char* str) -> decimal_fast32_t
constexpr auto operator "" _DFF(unsigned long long v) -> decimal_fast32_t
constexpr auto operator "" _dff(unsigned long long v) -> decimal_fast32_t
constexpr auto operator "" _DDF(const char* str) -> decimal_fast64_t
constexpr auto operator "" _ddf(const char* str) -> decimal_fast64_t
constexpr auto operator "" _DDF(unsigned long long v) -> decimal_fast64_t
constexpr auto operator "" _ddf(unsigned long long v) -> decimal_fast64_t
constexpr auto operator "" _DLF(const char* str) -> decimal_fast128_t
constexpr auto operator "" _dlf(const char* str) -> decimal_fast128_t
constexpr auto operator "" _DLF(unsigned long long v) -> decimal_fast128_t
constexpr auto operator "" _dlf(unsigned long long v) -> decimal_fast128_t
} //namespace decimal
} //namespace boost
0.2_DF is equivalent to calling decimal32_t{2, -1} .
These are different from calling decimal32_t{0.2} which converts from a floating-point value which may or may not be exactly represented.
|