Namensräume
Varianten
Aktionen

Erweiterungen für Bereiche

Von cppreference.com
 
 
 
 

Die C++ Extensions for Ranges, ISO/IEC TS 21425:2017, spezifiziert eine Modifikation der Kernsprache und definiert neue Komponenten für die C++-Standardbibliothek, die auf dieser Seite aufgeführt sind.

Die Ranges TS basiert auf dem C++14-Standard, modifiziert durch die Concepts TS.

Inhalt

[bearbeiten] Änderungen an der Kernsprache

Die Ranges TS modifiziert die Spezifikation der bereichsbasierten for-Schleife, um unterschiedlich typisierte Begin- und End-Iteratoren zuzulassen. Diese Änderung ermöglicht die Verwendung von Sentinels und ist auch in C++17 vorhanden.

[bearbeiten] Konzepte

Kernsprachen-Konzepte
Definiert in Header <experimental/ranges/concepts>
Definiert im Namespace std::experimental::ranges
gibt an, dass ein Typ identisch mit einem anderen Typ ist
(concept) [bearbeiten]
gibt an, dass ein Typ von einem anderen Typ abgeleitet ist
(concept) [bearbeiten]
gibt an, dass ein Typ implizit in einen anderen Typ konvertierbar ist
(concept) [bearbeiten]
gibt an, dass zwei Typen einen gemeinsamen Referenztyp haben
(concept) [bearbeiten]
gibt an, dass zwei Typen einen gemeinsamen Typ haben
(concept) [bearbeiten]
gibt an, dass ein Typ ein ganzzahliger Typ ist
(concept) [bearbeiten]
gibt an, dass ein Typ ein vorzeichenbehafteter ganzzahliger Typ ist
(concept) [bearbeiten]
spezifiziert, dass ein Typ ein ganzzahliger Typ ist, der nicht vorzeichenbehaftet ist
(concept) [bearbeiten]
gibt an, dass ein Typ von einem anderen Typ zuweisbar ist
(concept) [bearbeiten]
gibt an, dass ein Typ vertauscht werden kann oder dass zwei Typen miteinander vertauscht werden können
(concept) [bearbeiten]
Vergleichskonzepte
Definiert in Header <experimental/ranges/concepts>
Definiert im Namespace std::experimental::ranges
gibt an, dass ein Typ in booleschen Kontexten verwendet werden kann
(concept) [bearbeiten]
spezifiziert, dass zwei Typen mit den Operatoren == und != auf Gleichheit verglichen werden können
(concept) [bearbeiten]
gibt an, dass der Operator == eine Äquivalenzrelation ist
(concept) [bearbeiten]
gibt an, dass die Vergleichsoperatoren des Typs eine Totalordnung ergeben
(concept) [bearbeiten]
Objektkonzepte
Definiert in Header <experimental/ranges/concepts>
Definiert im Namespace std::experimental::ranges
spezifiziert, dass ein Objekt des Typs zerstört werden kann
(concept) [bearbeiten]
gibt an, dass eine Variable des Typs aus einer Reihe von Argumenttypen konstruiert oder an sie gebunden werden kann
(concept) [bearbeiten]
gibt an, dass ein Objekt eines Typs standardkonstruiert werden kann
(concept) [bearbeiten]
gibt an, dass ein Objekt eines Typs per Move konstruiert werden kann
(concept) [bearbeiten]
gibt an, dass ein Objekt eines Typs kopierkonstruiert und per Move konstruiert werden kann
(concept) [bearbeiten]
gibt an, dass ein Objekt eines Typs verschoben und vertauscht werden kann
(concept) [bearbeiten]
gibt an, dass ein Objekt eines Typs kopiert, verschoben und vertauscht werden kann
(concept) [bearbeiten]
gibt an, dass ein Objekt eines Typs kopiert, verschoben, vertauscht und standardkonstruiert werden kann
(concept) [bearbeiten]
spezifiziert, dass ein Typ regulär ist, d.h. er ist sowohl Semiregular als auch EqualityComparable
(concept) [bearbeiten]
Aufrufbare Konzepte
Definiert in Header <experimental/ranges/concepts>
Definiert im Namespace std::experimental::ranges
gibt an, dass ein aufrufbarer Typ mit einem gegebenen Satz von Argumenttypen aufgerufen werden kann
(concept) [bearbeiten]
gibt an, dass ein aufrufbarer Typ ein boolesches Prädikat ist
(concept) [bearbeiten]
gibt an, dass ein aufrufbarer Typ eine binäre Relation ist
(concept) [bearbeiten]
spezifiziert, dass eine Relation eine strikte schwache Ordnung aufzwingt
(concept) [bearbeiten]
Konzept für Zufallszahlengeneratoren
Definiert in Header <experimental/ranges/random>
Definiert im Namespace std::experimental::ranges
spezifiziert, dass ein Typ als uniformer Zufallszahlengenerator qualifiziert ist
(concept) [bearbeiten]

[bearbeiten] Allgemeine Dienstprogramme

Hilfskomponenten
Definiert in Header <experimental/ranges/utility>
Definiert im Namespace std::experimental::ranges
tauscht den Wert zweier Objekte
(customization point object)[bearbeiten]
ersetzt das Argument durch einen neuen Wert und gibt seinen vorherigen Wert zurück
(function template) [bearbeiten]
Funktionsobjekte
Definiert im Namespace std::experimental::ranges
ruft ein Callable-Objekt mit den gegebenen Argumenten auf
(function template) [bearbeiten]
Funktions-Objekt, das x == y implementiert
(class template) [bearbeiten]
Funktions-Objekt, das x != y implementiert
(class template) [bearbeiten]
Funktions-Objekt, das x > y implementiert
(class template) [bearbeiten]
Funktions-Objekt, das x < y implementiert
(class template) [bearbeiten]
Funktions-Objekt, das x >= y implementiert
(class template) [bearbeiten]
Funktions-Objekt, das x <= y implementiert
(class template) [bearbeiten]
Funktions-Objekt, das sein Argument unverändert zurückgibt
(class) [bearbeiten]
Metaprogrammierung und Typ-Traits
Definiert im Namespace std::experimental::ranges
prüft, ob Objekte eines Typs mit Objekten desselben oder eines anderen Typs vertauscht werden können
(class template) [bearbeiten]
ermittelt den gemeinsamen Referenztyp einer Menge von Typen
(class template) [bearbeiten]
ermittelt den gemeinsamen Typ einer Menge von Typen
(class template) [bearbeiten]
Getaggte Paare und Tupel
Definiert in Header <experimental/ranges/utility>
Definiert im Namespace std::experimental::ranges
spezifiziert, dass ein Typ ein Tag-Specifier ist
(concept) [bearbeiten]
spezifiziert, dass ein Typ einen Tag-Specifier und seinen Elementtyp repräsentiert
(concept) [bearbeiten]
erweitert einen Tupel-ähnlichen Typ um benannte Accessoren
(class template) [bearbeiten]
Alias-Vorlage für ein getaggtes std::pair
(alias template)[bearbeiten]
Komfortfunktion zum Erstellen eines tagged_pair
(function template) [bearbeiten]
Definiert in Header <experimental/ranges/tuple>
Alias-Vorlage für ein getaggtes std::tuple
(alias template)[bearbeiten]
Komfortfunktion zum Erstellen eines tagged_tuple
(function template) [bearbeiten]
Definiert im Namespace std::experimental::ranges::tag
Tag-Specifier für die Verwendung mit ranges::tagged
(class) [bearbeiten]

[bearbeiten] Iteratoren

Definiert in Header <experimental/ranges/iterator>
Iterator-bezogene Konzepte
Definiert im Namespace std::experimental::ranges
Iterator-Konzepte
spezifiziert, dass ein Typ durch Anwenden des Operators * lesbar ist
(concept) [bearbeiten]
spezifiziert, dass ein Wert in das von einem Iterator referenzierte Objekt geschrieben werden kann
(concept) [bearbeiten]
spezifiziert, dass ein Semiregular-Typ mit Prä- und Post-Inkrement-Operatoren inkrementiert werden kann
(concept) [bearbeiten]
spezifiziert, dass die Inkrementoperation auf einem WeaklyIncrementable-Typ gleichheitserhaltend ist und dass der Typ EqualityComparable ist
(concept) [bearbeiten]
spezifiziert, dass Objekte eines Typs inkrementiert und dereferenziert werden können
(concept) [bearbeiten]
spezifiziert, dass Objekte eines Typs ein Sentinel für einen Iterator-Typ sind
(concept) [bearbeiten]
spezifiziert, dass der Operator - auf einen Iterator und ein Sentinel angewendet werden kann, um ihre Differenz in konstanter Zeit zu berechnen
(concept) [bearbeiten]
spezifiziert, dass ein Typ ein Eingabeiterator ist, d. h. seine referenzierten Werte können gelesen werden und er kann sowohl prä- als auch post-inkrementiert werden
(concept) [bearbeiten]
spezifiziert, dass ein Typ ein Ausgabeiterator für einen gegebenen Werttyp ist, d. h. Werte dieses Typs können hineingeschrieben werden und er kann sowohl prä- als auch post-inkrementiert werden
(concept) [bearbeiten]
spezifiziert, dass ein InputIterator ein Vorwärtsiterator ist, der Gleichheitsvergleich und Mehrfachdurchlauf unterstützt
(concept) [bearbeiten]
spezifiziert, dass ein ForwardIterator ein bidirektionaler Iterator ist, der Rückwärtsbewegung unterstützt
(concept) [bearbeiten]
spezifiziert, dass ein BidirectionalIterator ein Zufallszugriffsiterator ist, der Fortschritt in konstanter Zeit und Indizierung unterstützt
(concept) [bearbeiten]
Indirekte aufrufbare Konzepte
spezifiziert, dass ein aufrufbarer Typ mit dem Ergebnis des Dereferenzierens eines Readable-Typs aufgerufen werden kann
(concept) [bearbeiten]
spezifiziert, dass ein aufrufbares Objekt, wenn es mit dem Ergebnis des Dereferenzierens eines Readable-Typs aufgerufen wird, Predicate erfüllt
(concept) [bearbeiten]
spezifiziert, dass ein aufrufbares Objekt, wenn es mit dem Ergebnis des Dereferenzierens einiger Readable-Typen aufgerufen wird, Relation erfüllt
(concept) [bearbeiten]
spezifiziert, dass ein aufrufbares Objekt, wenn es mit dem Ergebnis des Dereferenzierens einiger Readable-Typen aufgerufen wird, StrictWeakOrder erfüllt
(concept) [bearbeiten]
Gemeinsame Algorithmus-Anforderungen
spezifiziert, dass Werte von einem Readable-Typ zu einem Writable-Typ verschoben werden können
(concept) [bearbeiten]
spezifiziert, dass Werte von einem Readable-Typ zu einem Writable-Typ verschoben werden können und dass das Verschieben über ein Zwischenobjekt erfolgen kann
(concept) [bearbeiten]
spezifiziert, dass Werte von einem Readable-Typ zu einem Writable-Typ kopiert werden können
(concept) [bearbeiten]
spezifiziert, dass Werte von einem Readable-Typ zu einem Writable-Typ kopiert werden können und dass das Kopieren über ein Zwischenobjekt erfolgen kann
(concept) [bearbeiten]
spezifiziert, dass die Werte, auf die zwei Readable-Typen verweisen, vertauscht werden können
(concept) [bearbeiten]
spezifiziert, dass die Werte, auf die zwei Readable-Typen verweisen, verglichen werden können
(concept) [bearbeiten]
spezifiziert die gemeinsamen Anforderungen für Algorithmen, die Elemente an Ort und Stelle neu ordnen
(concept) [bearbeiten]
spezifiziert die Anforderungen für Algorithmen, die sortierte Sequenzen durch Kopieren von Elementen zu einer Ausgabesequenz zusammenführen
(concept) [bearbeiten]
spezifiziert die gemeinsamen Anforderungen für Algorithmen, die Sequenzen zu sortierten Sequenzen permutieren
(concept) [bearbeiten]
Konzept-Dienstprogramme
Berechnet das Ergebnis des Aufrufs eines aufrufbaren Objekts mit dem Ergebnis der Dereferenzierung einer Menge von Readable-Typen
(Klassenvorlage) [bearbeiten]
Hilfsvorlage zur Spezifizierung der Einschränkungen für Algorithmen, die Projektionen akzeptieren
(Klassenvorlage) [bearbeiten]
Iterator-Primitive
Iterator-Dienstprogramme
Definiert im Namespace std::experimental::ranges
wandelt das Ergebnis der Dereferenzierung eines Objekts in seinen zugehörigen rvalue-Referenztyp um
(Anpassungspunkt-Objekt)[bearbeiten]
tauscht die Werte, auf die zwei dereferenzierbare Objekte verweisen
(Anpassungspunkt-Objekt)[bearbeiten]
Iterator-Traits
Definiert im Namespace std::experimental::ranges
erhält den Differenztyp eines WeaklyIncrementable-Typs
(Klassenvorlage) [bearbeiten]
erhält den Werttyp eines Readable-Typs
(Klassenvorlage) [bearbeiten]
erhält die Iterator-Kategorie eines Eingabe-Iterator-Typs
(Klassenvorlage) [bearbeiten]
Kompatibilitäts-Traits-Klasse, die die zugehörigen Typen eines Iterators sammelt
(Alias-Vorlage)[bearbeiten]
erhält die assoziierten Referenztypen eines dereferenzierbaren Objekts
(Alias-Vorlage)[bearbeiten]
Iterator-Kategorie-Tags
Definiert im Namespace std::experimental::ranges
leere Klassentypen, die zur Angabe von Iterator-Kategorien verwendet werden
(Klasse) [bearbeiten]
std::iterator_traits Spezialisierungen
Definiert im Namespace std
spezialisiert std::iterator_traits für Ranges-TS-Iteratoren
(Klassenvorlagen-Spezialisierung) [bearbeiten]
Iterator-Operationen
Definiert im Namespace std::experimental::ranges
bewegt einen Iterator um die angegebene Distanz vorwärts
(Funktionsvorlage) [bearbeiten]
gibt die Distanz zwischen einem Iterator und einem Sentinel zurück, oder zwischen dem Anfang und dem Ende eines Bereichs
(Funktionsvorlage) [bearbeiten]
inkrementiert einen Iterator
(Funktionsvorlage) [bearbeiten]
dekrementiert einen Iterator
(Funktionsvorlage) [bearbeiten]
Iterator-Adapter
Definiert im Namespace std::experimental::ranges
Iterator-Adapter für die Rückwärtsiteration
(Klassenvorlage) [bearbeiten]
Iterator-Adapter für die Einfügung am Ende eines Containers
(Klassenvorlage) [bearbeiten]
Iterator-Adapter für die Einfügung am Anfang eines Containers
(Klassenvorlage) [bearbeiten]
Iterator-Adapter für die Einfügung in einen Container
(Klassenvorlage) [bearbeiten]
Iterator-Adapter, der zu einer rvalue-Referenz dereferenziert
(Klassenvorlage) [bearbeiten]
Sentinel-Adapter zur Verwendung mit move_iterator
(Klassenvorlage) [bearbeiten]
passt ein Iterator-Sentinel-Paar an einen gemeinsamen Iteratortyp zur Verwendung mit Legacy-Algorithmen an
(Klassenvorlage) [bearbeiten]
Iterator-Adapter, der seine Distanz von seiner Startposition verfolgt
(Klassenvorlage) [bearbeiten]
leerer Sentinel-Typ zur Verwendung mit Iteratortypen, die die Grenze ihres Bereichs kennen
(Klasse) [bearbeiten]
Wrapper für einen möglicherweise ungültigen Iterator
(Klassenvorlage) [bearbeiten]
Alias-Vorlage, die den Iteratortyp eines rvalue-Bereichs mit dangling umschließt
(Alias-Vorlage)[bearbeiten]
Sentinel-Typ, der mit jedem Iterator verwendet wird, um einen unendlichen Bereich zu bezeichnen
(Klasse) [bearbeiten]
Stream-Iteratoren
Definiert im Namespace std::experimental::ranges
Eingabe-Iterator, der aus std::basic_istream liest
(Klassenvorlage) [bearbeiten]
Ausgabe-Iterator, der in std::basic_ostream schreibt
(Klassenvorlage) [bearbeiten]
Eingabe-Iterator, der aus std::basic_streambuf liest
(Klassenvorlage) [bearbeiten]
Ausgabe-Iterator, der in std::basic_streambuf schreibt
(Klassenvorlage) [bearbeiten]

[bearbeiten] Ranges

Definiert in Header <experimental/ranges/range>
Range-Konzepte
spezifiziert, dass ein Typ ein Range ist, d. h. er stellt einen begin-Iterator und ein end-Sentinel bereit
(Konzept) [bearbeiten]
spezifiziert, dass ein Range seine Größe in konstanter Zeit kennt
(Konzept) [bearbeiten]
spezifiziert, dass ein Range ein View ist, d. h. er hat konstante Zeit für Kopie/Verschiebung/Zuweisung
(Konzept) [bearbeiten]
spezifiziert, dass ein Range identische Iterator- und Sentinel-Typen hat
(Konzept) [bearbeiten]
spezifiziert einen Bereich, dessen Iteratortyp InputIterator erfüllt
(Konzept) [bearbeiten]
spezifiziert einen Bereich, dessen Iteratortyp OutputIterator erfüllt
(Konzept) [bearbeiten]
spezifiziert einen Bereich, dessen Iteratortyp ForwardIterator erfüllt
(Konzept) [bearbeiten]
spezifiziert einen Bereich, dessen Iteratortyp BidirectionalIterator erfüllt
(Konzept) [bearbeiten]
spezifiziert einen Bereich, dessen Iteratortyp RandomAccessIterator erfüllt
(Konzept) [bearbeiten]
Bereichszugriff
Definiert im Namespace std::experimental::ranges
gibt einen Iterator zum Anfang eines Ranges zurück
(Anpassungspunkt-Objekt)[bearbeiten]
gibt einen Iterator zum Ende eines Bereichs zurück
(Anpassungspunkt-Objekt)[bearbeiten]
gibt einen Reverse-Iterator zu einem Range zurück
(Anpassungspunkt-Objekt)[bearbeiten]
gibt einen Reverse-End-Iterator zu einem Range zurück
(Anpassungspunkt-Objekt)[bearbeiten]
Range-Primitive
Definiert im Namespace std::experimental::ranges
erhält die Größe eines Bereichs, dessen Größe in konstanter Zeit berechnet werden kann
(Anpassungspunkt-Objekt)[bearbeiten]
prüft, ob ein Range leer ist
(Anpassungspunkt-Objekt)[bearbeiten]
ruft einen Zeiger auf den Anfang eines zusammenhängenden Ranges ab
(Anpassungspunkt-Objekt)[bearbeiten]
erhält die Iterator- und Sentinel-Typen eines Bereichs
(Alias-Vorlage)[bearbeiten]

[bearbeiten] Algorithmen

Nicht-modifizierende Sequenzoperationen
Definiert im Namespace std::experimental::ranges
Prüft, ob eine Bedingung für alle, einige oder keine Elemente in einem Bereich wahr ist
(Funktionsvorlage) [bearbeiten]
Wendet eine Funktion auf einen Elementbereich an
(Funktionsvorlage) [bearbeiten]
Gibt die Anzahl der Elemente zurück, die bestimmte Kriterien erfüllen
(Funktionsvorlage) [bearbeiten]
Findet die erste Position, an der sich zwei Bereiche unterscheiden
(Funktionsvorlage) [bearbeiten]
Bestimmt, ob zwei Elementmengen gleich sind
(Funktionsvorlage) [bearbeiten]
gibt true zurück, wenn ein Bereich lexikographisch kleiner als ein anderer ist
(Funktionsvorlage) [bearbeiten]
Findet das erste Element, das bestimmte Kriterien erfüllt
(Funktionsvorlage) [bearbeiten]
Findet die letzte Sequenz von Elementen in einem bestimmten Bereich
(Funktionsvorlage) [bearbeiten]
Sucht nach einem der Elemente aus einer Menge von Elementen
(Funktionsvorlage) [bearbeiten]
Findet die ersten beiden benachbarten Elemente, die gleich sind (oder eine gegebene Bedingung erfüllen)
(Funktionsvorlage) [bearbeiten]
sucht nach einem Bereich von Elementen
(Funktionsvorlage) [bearbeiten]
sucht nach einer Anzahl aufeinanderfolgender Kopien eines Elements in einem Bereich
(Funktionsvorlage) [bearbeiten]
Modifizierende Sequenzoperationen
Definiert im Namespace std::experimental::ranges
Kopiert einen Elementbereich an einen neuen Speicherort
(Funktionsvorlage) [bearbeiten]
Kopiert eine Anzahl von Elementen an einen neuen Speicherort
(Funktionsvorlage) [bearbeiten]
Kopiert einen Elementbereich in umgekehrter Reihenfolge
(Funktionsvorlage) [bearbeiten]
Verschiebt einen Elementbereich an einen neuen Speicherort
(Funktionsvorlage) [bearbeiten]
Verschiebt einen Elementbereich in umgekehrter Reihenfolge an einen neuen Speicherort
(Funktionsvorlage) [bearbeiten]
Weist einem Elementbereich einen bestimmten Wert zu
(Funktionsvorlage) [bearbeiten]
Weist einer Anzahl von Elementen einen Wert zu
(Funktionsvorlage) [bearbeiten]
Wendet eine Funktion auf einen Elementbereich an
(Funktionsvorlage) [bearbeiten]
Speichert das Ergebnis einer Funktion in einem Bereich
(Funktionsvorlage) [bearbeiten]
Speichert das Ergebnis von N Funktionsanwendungen
(Funktionsvorlage) [bearbeiten]
entfernt Elemente, die bestimmte Kriterien erfüllen
(Funktionsvorlage) [bearbeiten]
Kopiert einen Bereich von Elementen und lässt diejenigen aus, die bestimmte Kriterien erfüllen
(Funktionsvorlage) [bearbeiten]
Ersetzt alle Werte, die bestimmte Kriterien erfüllen, durch einen anderen Wert
(Funktionsvorlage) [bearbeiten]
Kopiert einen Bereich und ersetzt Elemente, die bestimmte Kriterien erfüllen, durch einen anderen Wert
(Funktionsvorlage) [bearbeiten]
Tauscht zwei Elementbereiche
(Funktionsvorlage) [bearbeiten]
Kehrt die Reihenfolge der Elemente in einem Bereich um
(Funktionsvorlage) [bearbeiten]
Erstellt eine Kopie eines Bereichs, der umgekehrt ist
(Funktionsvorlage) [bearbeiten]
Rotiert die Reihenfolge der Elemente in einem Bereich
(Funktionsvorlage) [bearbeiten]
Kopiert und rotiert einen Bereich von Elementen
(Funktionsvorlage) [bearbeiten]
Ordnet Elemente in einem Bereich zufällig neu an
(Funktionsvorlage) [bearbeiten]
Entfernt aufeinanderfolgende doppelte Elemente in einem Bereich
(Funktionsvorlage) [bearbeiten]
Erstellt eine Kopie eines Bereichs von Elementen, die keine aufeinanderfolgenden Duplikate enthält
(Funktionsvorlage) [bearbeiten]
Partitionierungsoperationen
Definiert im Namespace std::experimental::ranges
Stellt fest, ob der Bereich durch das gegebene Prädikat partitioniert ist
(Funktionsvorlage) [bearbeiten]
Teilt einen Bereich von Elementen in zwei Gruppen auf
(Funktionsvorlage) [bearbeiten]
Kopiert einen Bereich und teilt die Elemente in zwei Gruppen auf
(Funktionsvorlage) [bearbeiten]
Teilt Elemente in zwei Gruppen auf und behält dabei ihre relative Reihenfolge bei
(Funktionsvorlage) [bearbeiten]
Findet den Partitionierungspunkt eines partitionierten Bereichs
(Funktionsvorlage) [bearbeiten]
Sortieroperationen
Definiert im Namespace std::experimental::ranges
Prüft, ob ein Bereich aufsteigend sortiert ist
(Funktionsvorlage) [bearbeiten]
Findet den größten sortierten Teilbereich
(Funktionsvorlage) [bearbeiten]
Sortiert einen Bereich aufsteigend
(Funktionsvorlage) [bearbeiten]
Sortiert die ersten N Elemente eines Bereichs
(Funktionsvorlage) [bearbeiten]
Kopiert und sortiert einen Bereich von Elementen teilweise
(Funktionsvorlage) [bearbeiten]
Sortiert einen Bereich von Elementen und behält dabei die Reihenfolge zwischen gleichen Elementen bei
(Funktionsvorlage) [bearbeiten]
Sortiert den gegebenen Bereich teilweise, so dass er durch das gegebene Element partitioniert wird
(Funktionsvorlage) [bearbeiten]
Binäre Suchoperationen (auf sortierten Bereichen)
Definiert im Namespace std::experimental::ranges
Gibt einen Iterator zum ersten Element zurück, das nicht kleiner als der gegebene Wert ist
(Funktionsvorlage) [bearbeiten]
Gibt einen Iterator zum ersten Element zurück, das *größer* als ein bestimmter Wert ist
(Funktionsvorlage) [bearbeiten]
bestimmt, ob ein Element in einem bestimmten Bereich existiert
(Funktionsvorlage) [bearbeiten]
gibt den Bereich von Elementen zurück, die einem bestimmten Schlüssel entsprechen
(Funktionsvorlage) [bearbeiten]
Mengenoperationen (auf sortierten Bereichen)
Definiert im Namespace std::experimental::ranges
Führt zwei sortierte Bereiche zusammen
(Funktionsvorlage) [bearbeiten]
Führt zwei sortierte Bereiche an Ort und Stelle zusammen
(Funktionsvorlage) [bearbeiten]
gibt true zurück, wenn eine Menge eine Teilmenge einer anderen ist
(Funktionsvorlage) [bearbeiten]
Berechnet die Differenz zwischen zwei Mengen
(Funktionsvorlage) [bearbeiten]
Berechnet den Schnitt zweier Mengen
(Funktionsvorlage) [bearbeiten]
Berechnet die symmetrische Differenz zwischen zwei Mengen
(Funktionsvorlage) [bearbeiten]
Berechnet die Vereinigung zweier Mengen
(Funktionsvorlage) [bearbeiten]
Heapoperationen
Definiert im Namespace std::experimental::ranges
Prüft, ob der gegebene Bereich ein Max-Heap ist
(Funktionsvorlage) [bearbeiten]
Findet den größten Teilbereich, der ein Max-Heap ist
(Funktionsvorlage) [bearbeiten]
Erstellt aus einem Bereich von Elementen einen Max-Heap
(Funktionsvorlage) [bearbeiten]
Fügt ein Element zu einem Max-Heap hinzu
(Funktionsvorlage) [bearbeiten]
Entfernt das größte Element aus einem Max-Heap
(Funktionsvorlage) [bearbeiten]
Verwandelt einen Max-Heap in einen aufsteigend sortierten Bereich von Elementen
(Funktionsvorlage) [bearbeiten]
Minimum/Maximum-Operationen
Definiert im Namespace std::experimental::ranges
Gibt den größeren der beiden Werte zurück
(Funktionsvorlage) [bearbeiten]
Gibt das größte Element in einem Bereich zurück
(Funktionsvorlage) [bearbeiten]
Gibt den kleineren der beiden Werte zurück
(Funktionsvorlage) [bearbeiten]
gibt das kleinste Element in einem Bereich zurück
(Funktionsvorlage) [bearbeiten]
gibt die kleinere und größere von zwei Elementen zurück
(Funktionsvorlage) [bearbeiten]
gibt das kleinste und das größte Element in einem Bereich zurück
(Funktionsvorlage) [bearbeiten]
Permutationsoperationen
Definiert im Namespace std::experimental::ranges
bestimmt, ob eine Sequenz eine Permutation einer anderen Sequenz ist
(Funktionsvorlage) [bearbeiten]
erzeugt die nächstgrößere lexikographische Permutation eines Bereichs von Elementen
(Funktionsvorlage) [bearbeiten]
erzeugt die nächstkleinere lexikographische Permutation eines Bereichs von Elementen
(Funktionsvorlage) [bearbeiten]