This header is part of thecompile-time rational arithmetic library.
Classes | ||
(C++11) | represents exact rational fraction (class template)[edit] | |
Arithmetic | ||
(C++11) | adds tworatio objects at compile-time(alias template)[edit] | |
(C++11) | subtracts tworatio objects at compile-time(alias template)[edit] | |
(C++11) | multiplies tworatio objects at compile-time(alias template)[edit] | |
(C++11) | divides tworatio objects at compile-time(alias template)[edit] | |
Comparison | ||
(C++11) | compares tworatio objects for equality at compile-time(class template)[edit] | |
(C++11) | compares tworatio objects for inequality at compile-time(class template)[edit] | |
(C++11) | compares tworatio objects forless than at compile-time(class template)[edit] | |
(C++11) | compares tworatio objects forless than or equal to at compile-time(class template)[edit] | |
(C++11) | compares tworatio objects forgreater than at compile-time(class template)[edit] | |
(C++11) | compares tworatio objects forgreater than or equal to at compile-time(class template)[edit] |
Type Aliases | |
quecto (C++26) | std::ratio<1,1000000000000000000000000000000>, ifstd::intmax_t can represent the denominator |
ronto (C++26) | std::ratio<1,1000000000000000000000000000>, ifstd::intmax_t can represent the denominator |
yocto | std::ratio<1,1000000000000000000000000>, ifstd::intmax_t can represent the denominator |
zepto | std::ratio<1,1000000000000000000000>, ifstd::intmax_t can represent the denominator |
atto | std::ratio<1,1000000000000000000> |
femto | std::ratio<1,1000000000000000> |
pico | std::ratio<1,1000000000000> |
nano | std::ratio<1,1000000000> |
micro | std::ratio<1,1000000> |
milli | std::ratio<1,1000> |
centi | std::ratio<1,100> |
deci | std::ratio<1,10> |
deca | std::ratio<10,1> |
hecto | std::ratio<100,1> |
kilo | std::ratio<1000,1> |
mega | std::ratio<1000000,1> |
giga | std::ratio<1000000000,1> |
tera | std::ratio<1000000000000,1> |
peta | std::ratio<1000000000000000,1> |
exa | std::ratio<1000000000000000000,1> |
zetta | std::ratio<1000000000000000000000,1>, ifstd::intmax_t can represent the numerator |
yotta | std::ratio<1000000000000000000000000,1>, ifstd::intmax_t can represent the numerator |
ronna (C++26) | std::ratio<1000000000000000000000000000,1>, ifstd::intmax_t can represent the numerator |
quetta (C++26) | std::ratio<1000000000000000000000000000000,1>, ifstd::intmax_t can represent the numerator |
namespace std{// class template ratiotemplate<intmax_t N, intmax_t D=1>class ratio{public:typedef ratio<num, den> type;staticconstexpr intmax_t num;staticconstexpr intmax_t den;}; // ratio arithmetictemplate<class R1,class R2>using ratio_add=/*ratio*/;template<class R1,class R2>using ratio_subtract=/*ratio*/;template<class R1,class R2>using ratio_multiply=/*ratio*/;template<class R1,class R2>using ratio_divide=/*ratio*/; // ratio comparisontemplate<class R1,class R2>struct ratio_equal;template<class R1,class R2>struct ratio_not_equal;template<class R1,class R2>struct ratio_less;template<class R1,class R2>struct ratio_less_equal;template<class R1,class R2>struct ratio_greater;template<class R1,class R2>struct ratio_greater_equal; // convenience SI typedefstypedef ratio<1,1000000000000000000000000000000> quecto;typedef ratio<1,1000000000000000000000000000> ronto;typedef ratio<1,1000000000000000000000000> yocto;typedef ratio<1,1000000000000000000000> zepto;typedef ratio<1,1000000000000000000> atto;typedef ratio<1,1000000000000000> femto;typedef ratio<1,1000000000000> pico;typedef ratio<1,1000000000> nano;typedef ratio<1,1000000> micro;typedef ratio<1,1000> milli;typedef ratio<1,100> centi;typedef ratio<1,10> deci;typedef ratio<10,1> deca;typedef ratio<100,1> hecto;typedef ratio<1000,1> kilo;typedef ratio<1000000,1> mega;typedef ratio<1000000000,1> giga;typedef ratio<1000000000000,1> tera;typedef ratio<1000000000000000,1> peta;typedef ratio<1000000000000000000,1> exa;typedef ratio<1000000000000000000000,1> zetta;typedef ratio<1000000000000000000000000,1> yotta;typedef ratio<1000000000000000000000000000,1> ronna;typedef ratio<1000000000000000000000000000000,1> quetta;}