home | help
std::ratio_less(3)	       C++ Standard Libary	      std::ratio_less(3)

NAME
     std::ratio_less - std::ratio_less

Synopsis
	Defined in header <ratio>
	template< class R1, class R2 >
	struct	ratio_less  :  std::integral_constant<bool,  /*  see below */> {
     (since C++11)
	};

	If the ratio R1 is less than the ratio R2, provides the member	constant
     value equal
	true. Otherwise, value is false.

Member constants
	value	  true	if  R1::num * R2::den < R2::num * R1::den, or equivalent
     expression
	[static] that avoids overflow, false otherwise
		 (public static member constant)

Member functions
	operator bool converts the object to bool, returns value
		      (public member function)
	operator()    returns value
	(C++14)       (public member function)

Member types
	Type	   Definition
	value_type bool
	type	   std::integral_constant<bool, value>

Example
     // Run this code

      #include <iostream>
      #include <ratio>

      int main()
      {
	  using x = std::ratio<69, 90>;
	  using y = std::ratio<70, 90>;

	  if constexpr (std::ratio_less_v<x, y>)
	      std::cout << x::num << '/' << x::den << " < "
			<< y::num << '/' << y::den << '\n';
      }

Output:
      23/30 < 7/9

See also
	ratio_greater compares two ratio objects for greater  than  at	compile-
     time
	(C++11)       (class template)

http://cppreference.com 	   2024.06.10		      std::ratio_less(3)

home | help