Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

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

NAME
       std::ratio_not_equal - std::ratio_not_equal

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

	  If the ratios	R1 and R2 are not equal, provides the member  constant
       value equal
	  true.	Otherwise, value is false.

	 Helper	variable template

	  template< class R1, class R2 >
	  inline   constexpr   bool  ratio_not_equal_v	=  ratio_not_equal<R1,
       (since C++17)
	  R2>::value;

       Inherited from std::integral_constant

Member constants
	  value	   true	if R1::num != R2::num || R1::den !=  R2::den  ,	 false
       otherwise
	  [static] (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>

Possible implementation
	  template< class R1, class R2 >
	  struct ratio_not_equal : std::integral_constant <
					bool,
					!std::ratio_equal<R1, R2>
				   > {};

Example
       // Run this code

	#include <iostream>
	#include <ratio>

	int main()
	{
	    if(std::ratio_not_equal<std::ratio<2,3>,  std::ratio<1,3>>::value)
       {
		std::cout << "2/3 != 1/3\n";
	    } else {
		std::cout << "2/3 == 1/3\n";
	    }
	}

Output:
	2/3 != 1/3

See also
http://cppreference.com		  2022.07.31	       std::ratio_not_equal(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::ratio_not_equal&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help