2002-09-16 19:25:33 +00:00
<!doctype html public "-//ietf//dtd html//en">
2003-03-12 13:29:12 +00:00
< html >< head >< title > boost::mpl::not_equal_to</ title >
2002-09-16 19:25:33 +00:00
< link rel = "stylesheet" href = "../mpl_wiki.css" >
</ head >< body bgcolor = "white" >
2003-03-12 13:29:12 +00:00
< h1 >< a href = "../Table_of_Contents.html" >< img src = "../mpl_logo.jpg" alt = "[Home]" border = 0 align = "right" ></ a > not_equal_to</ h1 >< h3 > Synopsis</ h3 >
2002-09-16 19:25:33 +00:00
< p >
< pre >
template<
typename T1
2003-03-12 13:29:12 +00:00
, typename T2
2002-09-16 19:25:33 +00:00
>
struct not_equal_to
{
typedef < em > unspecified</ em > type;
};
</ pre >
< p >
< h3 > Description</ h3 >
< p >
2003-03-12 13:29:12 +00:00
Returns < code > true_</ code > if < code > T1::value != T2::value</ code > and < code > false_</ code > otherwise [< a href = "#1" > 1</ a > ].
2002-09-16 19:25:33 +00:00
< p >
< h3 > Definition</ h3 >
< p >
< pre >
2003-03-12 13:29:12 +00:00
#include "< a href = "../../../../../boost/mpl/not_equal_to.hpp" > boost/mpl/not_equal_to.hpp</ a > "
2002-09-16 19:25:33 +00:00
</ pre >
< p >
< h3 > Parameters</ h3 >
< table border = "1" >
< tr >< th > Parameter </ th >< th > Requirement </ th >< th > Description </ th ></ tr >
< tr >< td >< code > T1, T2</ code ></ td >< td > A model of < a href = "../Integral_Constant.html" > Integral Constant</ a ></ td >< td ></ td ></ tr >
</ table >
< p >
< h3 > Expression semantics</ h3 >
< p >
< table border = "1" >
< tr >< th > Expression </ th >< th > Expression type </ th >< th > Precondition </ th >< th > Semantics </ th >< th > Postcondition </ th ></ tr >
2003-03-12 13:29:12 +00:00
< tr >< td >< code > typedef not_equal_to< t1,t2> ::type c;</ code ></ td >< td > A model of < code > bool</ code > < a href = "../Integral_Constant.html" > Integral Constant</ a ></ td >< td ></ td >< td > Equivalent to < code > typedef bool_< (t1::value != t2::value)> c;</ code ></ td >< td ></ td ></ tr >
2002-09-16 19:25:33 +00:00
</ table >
< p >
< h3 > Complexity</ h3 >
< p >
Amortized constant time.
< p >
< h3 > Example</ h3 >
< p >
< pre >
typedef < a href = "../Reference/list_c.html" > list_c</ a > < int,1,5,0,7,5,-1,2,4,5> numbers;
2003-03-12 13:29:12 +00:00
typedef < a href = "../Reference/remove_if.html" > remove_if</ a > < numbers, not_equal_to< _1,int_< 5> > > ::type fives;
BOOST_STATIC_ASSERT(< a href = "../Reference/equal_to.html" > equal_to</ a > < < a href = "../Reference/count_if.html" > count_if</ a > < fives, < a href = "../Reference/equal_to.html" > equal_to</ a > < _1,int_< 5> > > ::type, < a href = "../Reference/size.html" > size</ a > < fives> ::type > ::type::value));
2002-09-16 19:25:33 +00:00
</ pre >
< p >
< h3 > Notes</ h3 >
< p >
[< a name = "1" > 1</ a > ] The < code > not_equal_to</ code > metafunction can be (and is expected to be) specialized by user to work on user-defined types that do not satisfy the < a href = "../Integral_Constant.html" > Integral Constant</ a > requirements. The requirements listed here are the ones imposed by the default implementation.< br >
< p >
< h3 > See also</ h3 >
< p >
< a href = "../Metafunctions.html" > Metafunctions</ a > , < code >< a href = "../Reference/equal_to.html" > equal_to</ a ></ code > , < code >< a href = "../Reference/less.html" > less</ a ></ code > , < code >< a href = "../Reference/less_equal.html" > less_equal</ a ></ code > , < code >< a href = "../Reference/greater.html" > greater</ a ></ code > , < code >< a href = "../Reference/greater_equal.html" > greater_equal</ a ></ code >
< p >< hr >
2003-03-12 13:29:12 +00:00
< a href = "../Table_of_Contents.html" > Table of Contents</ a >< br > Last edited March 10, 2003 6:20 am</ body ></ html >