std::ratio_equal (3) Linux Manual Page
std::ratio_equal – std::ratio_equal
Synopsis
Defined in header<ratio>
template <class R1, class R2>
(since C++ 11)
struct ratio_equal : std::integral_constant;
If the ratios R1 and R2 are equal, provides the member constant value equal true. Otherwise, value is false.
Helper variable template
template< class R1, class R2 > (since C++17)
inline constexpr bool ratio_equal_v = ratio_equal<R1, R2>::value;
Inherited from std::integral_constant
Member constants
value true if R1::num == R2::num && R1::den == R2::den , false otherwise
[static]
Member functions
operator bool (public member function)
operator() returns value
(C++14)
Member types
Type Definition
value_type bool
type std::integral_constant<bool, value>
Possible implementation
Example
// Run this code
#include <iostream>
#include <ratio>
int main()
{
if (std::ratio_equal<std::ratio<2, 3>, std::ratio<4, 6>>::value) {
std::cout << "2/3 == 4/6\n";
} else {
std::cout << "2/3 != 4/6\n";
}
}
Output:
