cpp / intermediate
Snippet
Festformat-Container mit Standard-Iteratoren
Im Gegensatz zu rohen Arrays im C-Stil ist std::array ein vollwertiger Container, der nicht automatisch zu einem Zeiger verfällt. Er kennt seine eigene Größe und unterstützt die Standard-Iterator-Schnittstelle (begin/end), wodurch er mit allen Standard-Algorithmen kompatibel ist und gleichzeitig eine Zero-Overhead-Leistung beibehält.
snippet.cpp
cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>#include <array>#include <algorithm>int main() {// std::array is a wrapper around a raw arraystd::array<int, 5> buffer = {42, 10, 5, 30, 22};// Supports standard iterators and algorithmsstd::sort(buffer.begin(), buffer.end());for (const int val : buffer) {std::cout << val << " ";}return 0;}
Erklärung
1
std::array<int, 5> buffer = {42, 10, 5, 30, 22};
Definiert ein Array fester Größe mit 5 Ganzzahlen. Die Größe ist Teil des Typs.
2
std::sort(buffer.begin(), buffer.end());
Verwendet die Standardsortierung der Bibliothek auf dem Container fester Größe.