Benutzer:Koschi/Kontainer der STL

Aus Spieleprogrammierer-Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Klassenfunktionen)
(Klassenfunktionen)
Zeile 114: Zeile 114:
 
! align="center" style="background-color:#C2C2C2;" | Wer
 
! align="center" style="background-color:#C2C2C2;" | Wer
 
|-
 
|-
| align="center" rowspan="4"  style="background-color:#E2E2E2;" | assign
+
| align="center" rowspan="2"  style="background-color:#E2E2E2;" | assign
| align="center" style="background-color:#E2E2E2;" | <span style="color:#007700;">1)</span> <span style="color:#0000C2;">void</span> assign (InputIterator ''first'', InputIterator ''last'');
+
| align="left" style="background-color:#E2E2E2;" |  
| align="center" rowspan="3" style="background-color:#E2E2E2;" |
+
<span style="color:#007700;">1)</span> <span style="color:#0000C2;">void</span> assign (InputIterator ''first'', InputIterator ''last'');<br>
<span style="color:#007700;">1)</span> Übernimmt vom Iterator ''first'' bis Iterator ''last'' alle Elemente
+
<span style="color:#007700;">2)</span> <span style="color:#0000C2;">void</span> assign (size_type ''n'', const T& ''val'');<br>
 
+
<span style="color:#007700;">3)</span> <span style="color:#0000C2;">void</span> assign (initializer_list<T> il);<br>
<span style="color:#007700;">2)</span> Übernimmt ''n'' mal den Wert von ''val''
+
| align="left" style="background-color:#E2E2E2;" |  
 
+
<span style="color:#007700;">1)</span> Übernimmt vom Iterator ''first'' bis Iterator ''last'' alle Elemente <br>
<span style="color:#007700;">3)</span> Übernimmt Werte aus einer std::initializer_list
+
<span style="color:#007700;">2)</span> Übernimmt ''n'' mal den Wert von ''val'' <br>
| align="center" rowspan="3" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list <br> vector
+
<span style="color:#007700;">3)</span> Übernimmt Werte aus einer std::initializer_list <br>
 
+
| align="center" rowspan="2" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list <br> vector
|-
+
| align="center" style="background-color:#E2E2E2;" | <span style="color:#007700;">2)</span> <span
+
style="color:#0000C2;">void</span> assign (size_type ''n'', const T& ''val'');
+
|-
+
| align="center" style="background-color:#E2E2E2;" | <span style="color:#007700;">3)</span> <span style="color:#0000C2;">void</span> assign (initializer_list<T> il);
+
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
{{Spoiler|'''deque'''|
 
{{Spoiler|'''deque'''|
 
<sourcecode lang=cpp tab=4 >
 
<sourcecode lang=cpp tab=4 >
Zeile 290: Zeile 285:
 
}}
 
}}
 
|-
 
|-
| align="center" rowspan="3"  style="background-color:#E2E2E2;" | at
+
| align="center" rowspan="2"  style="background-color:#E2E2E2;" | at
| align="center" style="background-color:#E2E2E2;" | <span style="color:#007700;">1)</span> T& at (size_type ''n'');
+
| align="left" style="background-color:#E2E2E2;" |  
| align="center" rowspan="2" style="background-color:#E2E2E2;" | Git das n-te Element zurück, <br> bei <span style="color:#007700;">1)</span> als Referenz <br> bei <span style="color:#007700;">2)</span> als Konstante Referenz
+
<span style="color:#007700;">1)</span> T& at (size_type ''n'');<br>
| align="center" rowspan="2"  style="background-color:#E2E2E2;" | array <br> deque <br> map <br> unordered_map <br> vector
+
<span style="color:#007700;">2)</span> <span style="color:#0000C2;">const</span> T& at (size_type ''n'') <span style="color:#0000C2;">const</span>;
 +
| align="left" style="background-color:#E2E2E2;" | Git das ''n''-te Element zurück, <br> bei <span style="color:#007700;">1)</span> als Referenz <br> bei <span style="color:#007700;">2)</span> als Konstante Referenz
 +
| align="center" rowspan="2"  style="background-color:#E2E2E2;" | array <br> deque <br> (multi)map <br> unordered_map <br> vector
 
|-
 
|-
| align="center" rowspan="1"  style="background-color:#E2E2E2;" | <span style="color:#007700;">2)</span> <span style="color:#0000C2;">const</span> T& at (size_type n) <span style="color:#0000C2;">const</span>;
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
|-
+
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
 
{{Spoiler|'''array'''|
 
{{Spoiler|'''array'''|
 
<sourcecode lang=cpp tab=4 >
 
<sourcecode lang=cpp tab=4 >
Zeile 362: Zeile 357:
 
}}
 
}}
 
|-
 
|-
| align="center" rowspan="2" style="background-color:#E2E2E2;" | back
+
| align="center" rowspan="2" style="background-color:#E2E2E2;" | back
| align="center" style="background-color:#E2E2E2;" | Deklaration
+
| align="left" style="background-color:#E2E2E2;" | Deklaration
| align="center" style="background-color:#E2E2E2;" | Erklärung
+
| align="left" style="background-color:#E2E2E2;" | Erklärung
| align="center" style="background-color:#E2E2E2;" | array <br> deque <br> list
+
| align="center" rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> list <br> back
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
| align="center" rowspan="2" style="background-color:#E2E2E2;" | befor_begin
+
| align="center" rowspan="2" style="background-color:#E2E2E2;" | befor_begin
| align="center" style="background-color:#E2E2E2;" | Deklaration
+
| align="left" style="background-color:#E2E2E2;" | Deklaration
| align="center" style="background-color:#E2E2E2;" | Erklärung
+
| align="left" style="background-color:#E2E2E2;" | Erklärung
| align="center" style="background-color:#E2E2E2;" | forward_list
+
| align="center" rowspan="2" style="background-color:#E2E2E2;" | forward_list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | begin
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | begin
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | cbefor_begin
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | cbefor_begin
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | cbegin
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | cbegin
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | cend
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | cend
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | clear
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | clear
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | count
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | map
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | crbegin
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | crbegin
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | crend
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | crend
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | data
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | data
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> list <br> map <br> queue <br> priority_queue
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace_after
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace_after
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace_back
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace_back
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace_front
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace_front
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | emplace_hint
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | (multi)map
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | empty
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | empty
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list <br> (multi)map <br> queue <br> priority_queue
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | end
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | end
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list <br> (multi)map
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | equal_range
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | erase
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | erase
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | erase_after
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | erase_after
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | fill
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | fill
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | find
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | (multi)map
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | front
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | front
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list <br> queue
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | get_allocator
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | get_allocator
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | insert
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | insert
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | insert_after
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | insert_after
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | key_comp
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | (multi)map
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | lower_bound
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | (multi)map
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | max_size
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | max_size
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | merge
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | merge
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | operator=
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | operator=
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | operator[]
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | operator[]
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | pop
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | queue <br> priority_queue
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | pop_back
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | pop_back
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | pop_front
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | pop_front
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | push
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | queue <br> priority_queue
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | push_back
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | push_back
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | push_front
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | push_front
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | rbegin
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | rbegin
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | remove
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | remove
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | remove_if
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | remove_if
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | rend
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | rend
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> list <br> (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | resize
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | resize
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque <br> forward_list <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | reverse
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | reverse
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | shrink_to_fit
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | shrink_to_fit
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | deque
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | deque
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | size
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | size
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> list <br> (multi)map <br> queue <br> priority_queue
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | sort
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | sort
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forwart_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forwart_list <br> list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | splice
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | splice
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | splice_after
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | splice_after
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forwart_list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forwart_list
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | swap
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | swap
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | array <br> deque <br> forward_list <br> list <br> (multi)map <br> queue <br> priority_queue
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | top
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | priority_queue
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
 
|-
 
|-
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | unique
 
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | unique
| align="center"  style="background-color:#E2E2E2;" | Deklaration
+
| align="left"  style="background-color:#E2E2E2;" | Deklaration
| align="center"  style="background-color:#E2E2E2;" | Erklärung
+
| align="left"  style="background-color:#E2E2E2;" | Erklärung
| align="center"  style="background-color:#E2E2E2;" | forward_list <br> list
+
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | forward_list <br> list
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | upper_bound
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | (multi)map
 +
|-
 +
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 +
}}
 +
|-
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | value_comp
 +
| align="left"  style="background-color:#E2E2E2;" | Deklaration
 +
| align="left"  style="background-color:#E2E2E2;" | Erklärung
 +
| align="center"  rowspan="2" style="background-color:#E2E2E2;" | (multi)map
 
|-
 
|-
! align="center" style="background-color:#E2E2E2;" colspan="3" | {{Spoiler|'''Code-Beispiel'''|
+
! align="center" style="background-color:#E2E2E2;" colspan="2" | {{Spoiler|'''Code-Beispiel'''|
 
}}
 
}}
 
|}
 
|}

Version vom 29. November 2015, 16:53 Uhr

In der Spieleentwicklung ist es oft nötig, ein gewisse Menge an identischen Daten zu verwalten. Um die Verwaltung der Daten nicht nicht von Grund auf selber zu programmieren bietet die Standard Template Libary eine umfangreiche Sammlung an Kontainern, die das Verwalten der Daten erheblich erleichtert. Die Arbeitsweise und wofür die Verschiedenen Kontainer sind soll in diesem Artikel näher beschrieben werden.

Inhaltsverzeichnis

Was ist ein Kontainer

Einen Kontainer kann man sich als Behältnis für Daten vorstellen, diese Daten werden auch Elemente genannt. Einen bekannter (nicht STL) Kontainer, den wohl jeder bereits kennt und benutzt hat, ist ein simples eindimenionales Array. Der Vorteil bei den STL Kontainer ist, dass die Anzahl der Elemente in den meinsten Fällen dynamisch wachsen können. Es spielt dabei keine Rolle ob diese Daten Structs, Klassen oder eines der Grunddatentypen sind. Wie das "Befüllen" mit Daten erfolgt, hängt aber vom Konatainer selber ab, da sich die Interne Datenstrukture von Kontainertyp zu Kontainertyp unterscheiden kann. Bedingt durch den Aufbau der Kontainer kann man diese in 3 Kategorien aufteilen:

Um die Verwaltung des benötigten Speichers, kümmern sich die Kontainer selber.

Sequentielle Kontainer

Die Daten in einem Sequentiellen Kontainer liegen in der Reihenfolge vor wie sie Eingefügt wurden. Das heist wurde ein Element als drittes hinzugefügt ist es auch später wieder an dieser stelle zu finden. Für Sequentielle Kontainer kann ein Iterator erstellt werde, der es ermöglicht alle Elemente des Kontainers über eine Schleife zu erreichen.

Zu den Sequentille Kontainer gehören:

Assoziative Kontainer

Die Assoziative Kontainer können weiter unterteilt werden in Map- und Set-Kontainer, sowie jeweils in eine multi Version. An welche Stelle im Kontainer die Elemente eingeordnet werden, kann über eine eigene Vergleichsfunktion bestimmt werden.

Mit C++11 wurden noch jeweils eine ungeordnete Versionen eingeführt. Ungeordnet heist in diesem Zusammenhang aber nur, dass nicht die Möglichkeit gegeben ist eine (eigene) Vergleichsfunktion einzusetzen. Intern arbeiten diese ungeordneten Kontainer mit Hashwerten, der Zugriff auf die Daten ist so wesentlich schneller. Es besteht aber die Möglichkeit einen eigenen Hash-Algorithmus einzusetzen, um die Reihenfolge der Daten festzulegen.

Der Zugriff auf ein Elemente kann bei allen Assoziative Kontainer über einen Schlüssel erfolgen. Die Map-Kontainer besitzen ein Schlüssel-Werte-Paar, Schlüssel und Wert können (müssen aber nicht) unterschiedliche Datentypen sein. Die Set-Kontainer besitzen lediglich den Schlüssel, der gleichzeitig auch den Wert darstellt. Der Schlüssel darf dabei nur einmalig im Kontainer vorkommen, es sei den es handelt sich um die multi Version, hier darf der Schlüssel mehrfach vorkommen.

Für Assoziative Kontainer kann ein Iterator erstellt werde, der es ermöglicht alle Elemente des Kontainers über eine Schleife zu erreichen.

Zu den Assoziative Kontainer gehören:

Kontaineradapter

Die Kontaineradapter sind spezielle Varianten von Sequentiellen Kontainer oder Assoziative Kontainer. Diese Kontainer sind auf besondere Aufgaben zugeschnitten, deshalb ist das Interface einfach gehalten und verzichtet auf Iteratoren.

Zu den Kontaineradapter gehören:

Allgemeines

Die Kontainer der Standard Template Libary befinden sich im Namensraum std.

Klassen und Structs sollten Kopierbar sein, dass heißt einen public Kopierkonstruktor haben. Sind sie nicht Kopierbar, müssen die Structs oder Klassen Moveable sein, dieses funktioniert aber nur solange die Objekte nicht Kopiert werden. Moveable bedeutet in diesem Zusammenhang, dass die Klassen oder Structs einen Movekonstruktor benötigen, dann kann die Instanz der Klasse mit der Funktion std::move(T) herumgereicht werden.

Einige Kontainer benötigen bei bestimmten Operationen ein public default Konstruktor oder ein public Gleichheits-Operator, welche bei Klassen oder Structs dann Implementiert werden muss. Geordnete Assoziative Kontainer benötigen, von den Klassen und Structs, einen öffentlichen Vergleichs-Operator.

Header

In folgender Tabelle sind die Header ersichtlich, die Includiert werden müssen, damit der entsprechende Kontainer genutzt werden kann.

Kontainer Name #include
array <array>
deque <deque>
forward_list <forward_list>
list <list>
vector <vector>
map <map>
multimap
unordered_map <unordered_map>
unordered_multimap
set <set>
multiset
unordered_set <unordered_set>
unordered_multiset
priority_queue <queue>
queue <queue>
stack <stack>

Klassenfunktionen

Funktion Deklaration Erklärung Wer
assign

1) void assign (InputIterator first, InputIterator last);
2) void assign (size_type n, const T& val);
3) void assign (initializer_list<T> il);

1) Übernimmt vom Iterator first bis Iterator last alle Elemente
2) Übernimmt n mal den Wert von val
3) Übernimmt Werte aus einer std::initializer_list

deque
forward_list
list
vector

Code-Beispiel

deque

#include <deque>
#include <iostream>
 
int main()
{
    int first = 1;
    int second = 2;
    int third = 3;
 
    std::deque<int> dequeContainer1, dequeContainer2, dequeContainer3;
 
    // 2) fügt 7 mal first in dequeContainer2 ein
    dequeContainer2.assign(7, first);
 
    // 1) fügt von dequeContainer2 die Elemente 2,3,4,5 und 6 in dequeContainer1 ein
    dequeContainer1.assign(dequeContainer2.begin() + 1, dequeContainer2.end() - 1);
 
    // 3) fügt die 3 Instanzen von intArray in dequeContainer3 ein
    int intArray[] = {first, second, third};
    dequeContainer3.assign(intArray, intArray + 3);
 
    std::cout << dequeContainer1.size() << std::endl;
    std::cout << dequeContainer2.size() << std::endl;
    std::cout << dequeContainer3.size() << std::endl;
 
    return 0;
}
 
/*
Ausgabe: 
5
7
3
*/

forward_list

#include <forward_list>
#include <iostream>
 
int main()
{
    int first = 1;
    int second = 2;
    int third = 3;
 
    std::forward_list<int> forwardListContainer1, forwardListContainer2;
 
    // 2) fügt 7 mal first in forwardListContainer2 ein
    forwardListContainer2.assign(7, first);
 
    // 1) fügt von forwardListContainer2 alle Elemente in forwardListContainer1 ein
    forwardListContainer1.assign(forwardListContainer2.begin(), forwardListContainer2.end());
 
    // 3) fügt die 3 Instanzen von intArray in forwardListContainer2 ein
    int intArray[] = {first, second, third};
    forwardListContainer2.assign(intArray, intArray + 3);
    
    // Ausgabe Inhalt
    std::cout << "forwardListContainer1: ";
    for(auto it = forwardListContainer1.begin(); it !=  forwardListContainer1.end(); ++it)
        std::cout << *it << " ";
 
    std::cout << std::endl;
    // Ausgabe Inhalt
    std::cout << "forwardListContainer2: ";
    for(auto it = forwardListContainer2.begin(); it !=  forwardListContainer2.end(); ++it)
        std::cout << *it << " ";
 
    return 0;
}
 
/*
Ausgabe:
forwardListContainer1: 1 1 1 1 1 1 1
forwardListContainer2: 1 2 3
*/

list

#include <list>
#include <iostream>
 
int main()
{
    int first = 1;
    int second = 2;
    int third = 3;
 
    std::list<int> listContainer1, listContainer2;
 
    // 2) fügt 7 mal first listContainer2 ein
    listContainer2.assign(7, first);
 
    // 1) fügt von listContainer2 alle Elemente 1 in listContainer1 ein
    listContainer1.assign(listContainer2.begin(), listContainer2.end());
 
    // 3) fügt die 3 Instanzen von intArray in listContainer2 ein
    int intArray[] = {first, second, third};
    listContainer2.assign(intArray, intArray + 3);
    
    std::cout << "listContainer1 size: " << listContainer1.size() << std::endl;
    std::cout << "listContainer2 size: " << listContainer2.size() << std::endl;
 
    return 0;
}
 
/*
Ausgabe:
listContainer1 size: 7
listContainer2 size: 3
*/

vector

#include <vector>
#include <iostream>
 
int main()
{
    int first = 1;
    int second = 2;
    int third = 3;
 
    std::vector<int> vectorContainer1, vectorContainer2;
 
    // 2) fügt 7 mal first vectorContainer2 ein
    vectorContainer2.assign(7, first);
 
    // 1) fügt von vectorContainer2 die Elemente 2,3,4,5 und 6 in vectorContainer1 ein
    vectorContainer1.assign(vectorContainer2.begin() + 1, vectorContainer2.end() - 1);
 
    // 3) fügt die 3 Instanzen von intArray in vectorContainer2 ein
    int intArray[] = {first, second, third};
    vectorContainer2.assign(intArray, intArray + 3);
    
    std::cout << "vectorContainer1 size: " << vectorContainer1.size() << std::endl;
    std::cout << "vectorContainer2 size: " << vectorContainer2.size() << std::endl;
 
    return 0;
}
 
/*
Ausgabe:
vectorContainer1 size: 5
vectorContainer2 size: 3
*/
at

1) T& at (size_type n);
2) const T& at (size_type n) const;

Git das n-te Element zurück,
bei 1) als Referenz
bei 2) als Konstante Referenz
array
deque
(multi)map
unordered_map
vector

Code-Beispiel

array

#include <iostream>
 
int main()
{
    return 0;
}

deque

#include <iostream>
 
int main()
{
    return 0;
}

map

#include <iostream>
 
int main()
{
    return 0;
}

unordered_map

#include <iostream>
 
int main()
{
    return 0;
}

vector

#include <iostream>
 
int main()
{
    return 0;
}
back Deklaration Erklärung array
deque
list
back

Code-Beispiel


befor_begin Deklaration Erklärung forward_list

Code-Beispiel


begin Deklaration Erklärung array
deque
forward_list
list
(multi)map

Code-Beispiel


cbefor_begin Deklaration Erklärung forward_list

Code-Beispiel


cbegin Deklaration Erklärung array
deque
forward_list
list
(multi)map

Code-Beispiel


cend Deklaration Erklärung array
deque
forward_list
list
(multi)map

Code-Beispiel


clear Deklaration Erklärung deque
forward_list
list
(multi)map

Code-Beispiel


count Deklaration Erklärung map

Code-Beispiel


crbegin Deklaration Erklärung array
deque
list
(multi)map

Code-Beispiel


crend Deklaration Erklärung array
deque
list
(multi)map

Code-Beispiel


data Deklaration Erklärung array

Code-Beispiel


emplace Deklaration Erklärung deque
list
map
queue
priority_queue

Code-Beispiel


emplace_after Deklaration Erklärung forward_list

Code-Beispiel


emplace_back Deklaration Erklärung deque
list

Code-Beispiel


emplace_front Deklaration Erklärung deque
forward_list
list

Code-Beispiel


emplace_hint Deklaration Erklärung (multi)map

Code-Beispiel


empty Deklaration Erklärung array
deque
forward_list
list
(multi)map
queue
priority_queue

Code-Beispiel


end Deklaration Erklärung array
deque
forward_list
list
(multi)map

Code-Beispiel


equal_range Deklaration Erklärung (multi)map

Code-Beispiel


erase Deklaration Erklärung deque
list
(multi)map

Code-Beispiel


erase_after Deklaration Erklärung forward_list

Code-Beispiel


fill Deklaration Erklärung array

Code-Beispiel


find Deklaration Erklärung (multi)map

Code-Beispiel


front Deklaration Erklärung array
deque
forward_list
list
queue

Code-Beispiel


get_allocator Deklaration Erklärung deque
forward_list
list
(multi)map

Code-Beispiel


insert Deklaration Erklärung deque
list
(multi)map

Code-Beispiel


insert_after Deklaration Erklärung forward_list

Code-Beispiel


key_comp Deklaration Erklärung (multi)map

Code-Beispiel


lower_bound Deklaration Erklärung (multi)map

Code-Beispiel


max_size Deklaration Erklärung array
deque
forward_list
list
(multi)map

Code-Beispiel


merge Deklaration Erklärung forward_list
list

Code-Beispiel


operator= Deklaration Erklärung deque
forward_list
list
(multi)map

Code-Beispiel


operator[] Deklaration Erklärung array
deque
(multi)map

Code-Beispiel


pop Deklaration Erklärung queue
priority_queue

Code-Beispiel


pop_back Deklaration Erklärung deque
list

Code-Beispiel


pop_front Deklaration Erklärung deque
forward_list
list

Code-Beispiel


push Deklaration Erklärung queue
priority_queue

Code-Beispiel


push_back Deklaration Erklärung deque
list

Code-Beispiel


push_front Deklaration Erklärung deque
forward_list
list

Code-Beispiel


rbegin Deklaration Erklärung array
deque
list
(multi)map

Code-Beispiel


remove Deklaration Erklärung forward_list
list

Code-Beispiel


remove_if Deklaration Erklärung forward_list
list

Code-Beispiel


rend Deklaration Erklärung array
deque
list
(multi)map

Code-Beispiel


resize Deklaration Erklärung deque
forward_list
list

Code-Beispiel


reverse Deklaration Erklärung forward_list
list

Code-Beispiel


shrink_to_fit Deklaration Erklärung deque

Code-Beispiel


size Deklaration Erklärung array
deque
list
(multi)map
queue
priority_queue

Code-Beispiel


sort Deklaration Erklärung forwart_list
list

Code-Beispiel


splice Deklaration Erklärung list

Code-Beispiel


splice_after Deklaration Erklärung forwart_list

Code-Beispiel


swap Deklaration Erklärung array
deque
forward_list
list
(multi)map
queue
priority_queue

Code-Beispiel


top Deklaration Erklärung priority_queue

Code-Beispiel


unique Deklaration Erklärung forward_list
list

Code-Beispiel


upper_bound Deklaration Erklärung (multi)map

Code-Beispiel


value_comp Deklaration Erklärung (multi)map

Code-Beispiel


Laufzeitverhalten

Diagramm Laufzeitverhalten für O(1), O(log n) und O(n)

Eine direkte Zeitangabe ist wenig sinvoll, da diese auch von der Hardware abhängig ist. Das Laufzeitverhalten beschreibt, wie sich der Zeitaufwand ändert, wenn sich die Anzahl der Elemente im Kontainer erhöt. Da es bei großen Projekten oft auch um Geschwindikeit geht, kann hier schon im Vorfeld die Richtige wahl, Refactoring vermeiden.

Bedeutung:

Kontainer Name array deque forward_list list vector
Beginn Mitte Ende Beginn Mitte Ende Beginn Mitte Ende Beginn Mitte Ende Beginn Mitte Ende
Element zugriff O(1) O(1) O(1) N/A O(1) N/A O(1) O(1)
Element einfügen N/A O(1) O(n) O(1) O(1) O(n) O(1) O(n) O(1) O(n) O(1)
Element löschen N/A O(1) O(1) O(n) O(1) O(1) O(n O(1) O(n) O(1)
Element finden N/A
Kontainer Name map multimap unordered_map unordered_multimap
Beginn Mitte Ende Beginn Mitte Ende Beginn Mitte Ende Beginn Mitte Ende
Element zugriff O(log n) O(log n) O(1)+ O(1)+
Element einfügen O(log n) O(log n) O(1)+ O(1)+
Element löschen O(log n) O(log n) O(1)+ O(1)+
Element finden O(log n) O(log n) O(1)+ O(1)+
Kontainer Name set multiset unordered_set unordered_multiset
Beginn Mitte Ende Beginn Mitte Ende Beginn Mitte Ende Beginn Mitte Ende
Element zugriff O(log n) O(log n) O(1)+ O(1)+
Element einfügen O(log n) O(log n) O(1)+ O(1)+
Element löschen O(log n) O(log n) O(1)+ O(1)+
Element finden O(log n) O(log n) O(1)+ O(1)+
Kontainer Name priority_queue queue stack
Größter Wert nicht Größter Wert Beginn Mitte Ende Beginn Mitte Ende
Element zugriff O(1) N/A O(1) N/A O(1) O(1) N/A
Element einfügen O(log n) N/A O(1) O(1) N/A
Element löschen O(log n) N/A O(1) N/A O(1) N/A
Element finden N/A
Meine Werkzeuge
Namensräume
Varianten
Aktionen
Navigation
Werkzeuge