
  Expression semantics
Name 
Expression 
Precondition 
Semantics 
Postcondition 
Range constructor 
X(i, j) X a(i, j); 
[i,j) is a valid range. 
Creates an associative container that contains all of the elements in the range [i,j) that have unique keys. The comparison object used by the container is key_compare(). 
size() is less than or equal to the distance from i to j. 
Range constructor with compare 
X(i, j, c) X a(i, j, c); 
[i,j) is a valid range. 
Creates an associative container that contains all of the elements in the range [i,j) that have unique keys. The comparison object used by the container is c. 
size() is less than or equal to the distance from i to j. 
Insert with hint 
a.insert(p, t) 
p is a nonsingular iterator in a. 
Inserts t into a if and only if a does not already contain an element whose key is equivalent to t's key. The argument p is a hint: it points to the location where the search will begin. The return value is a dereferenceable iterator that points to the element with a key that is equivalent to that of t. 
a contains an element whose key is the same as that of t. The size of a is incremented by either 1 or 0. 
Insert range 
a.insert(i, j) 
[i, j) is a valid range. 
Equivalent to a.insert(t) for each object t that is pointed to by an iterator in the range [i, j) . Each element is inserted into a if and only if a does not already contain an element with an equivalent key. 
The size of a is incremented by at most j – i. 
