ed map") [ |  ` **unordered_multimap** `  
--- ](/w/cpp/container/unordered_multimap "cpp/container/unordered multimap") [ |  ` **stack** `  
--- ](/w/cpp/container/stack "cpp/container/stack") [ |  ` **queue** `  
--- ](/w/cpp/container/queue "cpp/container/queue") [ |  ` **priority_queue** `  
--- ](/w/cpp/container/priority_queue "cpp/container/priority queue") [ |  ` **flat_set** `  
--- ](/w/cpp/container/flat_set "cpp/container/flat set") [ |  ` **flat_multiset** `  
--- ](/w/cpp/container/flat_multiset "cpp/container/flat multiset") [ |  ` **flat_map** `  
--- ](/w/cpp/container/flat_map "cpp/container/flat map") [ |  ` **flat_multimap** `  
--- ](/w/cpp/container/flat_multimap "cpp/container/flat multimap") Container   
Header  |  ` [ ` <string> ` ](/w/cpp/header/string "cpp/header/string") ` |  ` [ ` <array> ` ](/w/cpp/header/array "cpp/header/array") ` |  ` [ ` <vector> ` ](/w/cpp/header/vector "cpp/header/vector") ` |  ` [ ` <deque> ` ](/w/cpp/header/deque "cpp/header/deque") ` |  ` [ ` <forward_list> ` ](/w/cpp/header/forward_list "cpp/header/forward list") ` |  ` [ ` <list> ` ](/w/cpp/header/list "cpp/header/list") ` |  ` [ ` <set> ` ](/w/cpp/header/set "cpp/header/set") ` |  ` [ ` <map> ` ](/w/cpp/header/map "cpp/header/map") ` |  ` [ ` <unordered_set> ` ](/w/cpp/header/unordered_set "cpp/header/unordered set") ` |  ` [ ` <unordered_map> ` ](/w/cpp/header/unordered_map "cpp/header/unordered map") ` |  ` [ ` <stack> ` ](/w/cpp/header/stack "cpp/header/stack") ` |  ` [ ` <queue> ` ](/w/cpp/header/queue "cpp/header/queue") ` |  ` [ ` <flat_set> ` ](/w/cpp/header/flat_set "cpp/header/flat set") ` |  ` [ ` <flat_map> ` ](/w/cpp/header/flat_map "cpp/header/flat map") ` |  Header   
|  Pseudo container  |  Sequence containers  |  Associative containers  |  Unordered associative containers  |  Container adaptors  |   
  
The ` < ` , ` <= ` , ` > ` , ` >= ` , and ` != ` operators are [ synthesized ](/w/cpp/language/operators#Comparison_operators "cpp/language/operators") from  operator  <=> and  operator  ==  respectively.  |  (since C++20)   
---|---  
  
###  [ [ edit ](/mwiki/index.php?title=cpp/container&action=edit&section=11
"Edit section: Defect reports") ]  Defect reports

The following behavior-changing defect reports were applied retroactively to
previously published C++ standards.

DR  |  Applied to  |  Behavior as published  |  Correct behavior   
---|---|---|---  
[ LWG 51 ](https://cplusplus.github.io/LWG/issue51) |  C++98  |  container iterators might be invalidated   
by arbitrary library operation  |  they are only invalidated   
when specified  
  
###  [ [ edit ](/mwiki/index.php?title=cpp/container&action=edit&section=12
"Edit section: See also") ]  See also

C++ named requirements:

  * [ Container  ](/w/cpp/named_req/Container "cpp/named req/Container")
  * [ SequenceContainer  ](/w/cpp/named_req/SequenceContainer "cpp/named req/SequenceContainer")
  * [ ContiguousContainer  ](/w/cpp/named_req/ContiguousContainer "cpp/named req/ContiguousContainer")
  * [ ReversibleContainer  ](/w/cpp/named_req/ReversibleContainer "cpp/named req/ReversibleContainer")
  * [ AssociativeContainer  ](/w/cpp/named_req/AssociativeContainer "cpp/named req/AssociativeContainer")
  * [ AllocatorAwareContainer  ](/w/cpp/named_req/AllocatorAwareContainer "cpp/named req/AllocatorAwareContainer")
  * [ UnorderedAssociativeContainer  ](/w/cpp/named_req/UnorderedAssociativeContainer "cpp/named req/UnorderedAssociativeContainer")

[ valarray  ](/w/cpp/numeric/valarray "cpp/numeric/valarray") |  numeric arrays, array masks and array slices   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/numeric/dsc_valarray&action=edit)  
---|---  
[ basic_string  ](/w/cpp/string/basic_string "cpp/string/basic string") |  stores and manipulates sequences of characters   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/string/dsc_basic_string&action=edit)  
[ ba