Expression  Return type  Requirement 
a == b  convertible to bool  == is an equivalence relation,
that is, it has the following properties:

Expression  Return type  Requirement 
a < b  convertible to bool  < is a strict weak ordering relation ([alg.sorting]) 
Expression  Postcondition 
T t;  object t is defaultinitialized 
T u{};  object u is valueinitialized or aggregateinitialized 
T() T{}  an object of type T is valueinitialized
or aggregateinitialized 
Expression  Postcondition 
T u = rv;  u is equivalent to the value of rv before the construction 
T(rv)  T(rv) is equivalent to the value of rv before the construction 
rv's state is unspecified
[ Note : rv must still meet the requirements of the library
component that is using it. The operations listed in those requirements must
work as specified whether rv has been moved from or not. — end note ] 
Expression  Postcondition 
T u = v;  the value of v is unchanged and is equivalent to u 
T(v)  the value of v is unchanged and is equivalent to T(v) 
Expression  Return type  Return value  Postcondition 
t = rv  T&  t  If t and rv do not refer to the same object,
t is equivalent to the value of rv before the assignment 
rv's state is unspecified. 
Expression  Return type  Return value  Postcondition 
t = v  T&  t  t is equivalent to v, the value of v is unchanged 