std::ratio_multiply
来自cppreference.com
该页由英文版wiki使用Google Translate机器翻译而来。
该翻译可能存在错误或用词不当。鼠标停留在文本上可以看到原版本。你可以帮助我们修正错误或改进翻译。参见说明请点击这里. |
在头文件 <ratio> 中定义
|
||
template< class R1, class R2 > using ratio_multiply = /* unspecified */; |
||
的模板别名
std::ratio_multiply
表示的结果乘以两个精确理性由std::ratio实例表示馏分R1
和R2
。结果std::ratio例如std::ratio<Num, Denom>
其中Num == R1::num * R2::num和Denom == R1::den * R2::den.原文:
The template alias
std::ratio_multiply
denotes the result of multiplying two exact rational fractions represented by the std::ratio instances R1
and R2
. The result a std::ratio instance std::ratio<Num, Denom>
where Num == R1::num * R2::num and Denom == R1::den * R2::den.[编辑] 会员类型
会员类型
|
Definition |
type
|
std::ratio<num, den> |
[编辑] 会员常数
num [静态的]</div></div>
|
constexpr类型的值std::intmax_t等于 sign(Num) * sign(Denom) * abs(Num) / gcd(Num, Denom) 原文: constexpr value of type std::intmax_t equal to sign(Num) * sign(Denom) * abs(Num) / gcd(Num, Denom) (公共静态成员常量) |
den [静态的]</div></div>
|
constexpr类型的值std::intmax_t等于 abs(Denom) / gcd(Num, Denom) 原文: constexpr value of type std::intmax_t equal to abs(Denom) / gcd(Num, Denom) (公共静态成员常量) |
[编辑] 示例
#include <iostream> #include <ratio> int main() { typedef std::ratio<2, 3> two_third; typedef std::ratio<1, 6> one_sixth; typedef std::ratio_multiply<two_third, one_sixth> r; std::cout << "2/3 * 1/6 = " << r::num << '/' << r::den << '\n'; }
输出:
2/3 * 1/6 = 1/9