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

NAME
     std::ratio_less_equal - std::ratio_less_equal

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

	If the ratio R1 is less than or equal to the ratio R2, provides the mem-
     ber 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()
      {
	  static_assert(std::ratio_less_equal<std::ratio<1,   2>,  std::ratio<3,
     4>>::value,
			"1/2 <= 3/4");

	  if	     (std::ratio_less_equal<std::ratio<10,11>,		std::ra-
     tio<11,12>>::value)
	      std::cout << "10/11 <= 11/12" "\n";

	  static_assert(std::ratio_less_equal_v<std::ratio<10,	 11>,	std::ra-
     tio<11, 12>>);

	  if  constexpr  (std::ratio_less_equal_v<std::ratio<10,  11>,	std::ra-
     tio<11, 12>>)
	      std::cout << "11/12 <= 12/13" "\n";
      }

Output:
      10/11 <= 11/12
      11/12 <= 12/13

See also
	ratio_equal	compares two ratio objects for equality at compile-time
	(C++11) 	(class template)
	ratio_not_equal  compares  two	ratio objects for inequality at compile-
     time
	(C++11) 	(class template)

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

home | help