Standard C++ Library Class Reference
Description
multimap <Key ,T, Compare, Allocator> provides fast access to stored values of type T which are
indexed by keys of type Key. The default operation for key comparison is the < operator. Unlike map,
multimap allows insertion of duplicate keys.
multimap provides bidirectional iterators which point to an instance of pair<const Key x, T y> where x
is the key and y is the stored value associated with that key. The definition of multimap provides a
typedef to this pair called value_type.
The types used for both the template parameters Key and T must provide the following (where T is the
type, t is a value of T and u is a const value of T):
 Copy constructors - T(t) and T(u)
 Destructor - t.~T()
 Address of - &t and &u yielding T* and
 const T* respectively
 Assignment - t = a where a is a
 (possibley const) value of T
The type used for the Compare template parameter must satisfy the requirements for binary functions.
Interface
template <class Key, class T, class Compare = less<Key>,
 class Allocator = allocator>
 class multimap {
public:
// types
 typedef Key key_type;
 typedef T mapped_type;
 typedef pair<const Key, T> value_type;
 typedef Compare key_compare;
 typedef Allocator allocator_type;
 typename reference;
 typename const_reference;
 typename iterator;
 typename const_iterator;
 typename size_type;
 typename difference_type;
 typename reverse_iterator;
 typename const_reverse_iterator;
 class value_compare
 : public binary_function<value_type, value_type, bool> 
 {
 friend class multimap<Key, T, Comapare, Allocator>;
 public :
 bool operator() (const value_type&, const value_type&) const;










