C++ benannte Anforderungen: LegacyContiguousIterator (seit C++17)
Von cppreference.com
< cpp | benannte req
Ein LegacyContiguousIterator ist ein LegacyIterator, dessen logisch benachbarte Elemente auch physisch im Speicher benachbart sind.
Ein Zeiger auf ein Element eines Arrays erfüllt alle Anforderungen von LegacyContiguousIterator.
Inhalt |
[edit] Anforderungen
Der Typ It erfüllt LegacyContiguousIterator, wenn
- Der Typ It erfüllt LegacyIterator
Und für jedes
- a, ein dereferenzierbarer Iterator vom Typ It
- n, ein ganzzahliger Wert
so dass
- a + n ein gültiger und dereferenzierbarer Iteratorwert ist
then
- *(a + n) äquivalent ist zu *(std::addressof(*a) + n).
[edit] Standardbibliothek
Die folgenden Standardbibliothekstypen sind LegacyContiguousIterators.
- array::iterator.
- basic_string_view::iterator.
- basic_string::iterator.
- vector::iterator für
value_typeaußer bool. - Der Rückgabetyp von begin(valarray) und end(valarray).
[edit] Anmerkungen
Fancy Pointer zu Objekttypen müssen ebenfalls LegacyContiguousIterator erfüllen.
|
LegacyContiguousIterator wird durch das |
(seit C++20) |
[edit] Siehe auch
| (C++20) |
spezifiziert, dass ein random_access_iterator ein zusammenhängender Iterator ist, der auf Speicherbereiche verweist, die im Speicher zusammenhängend sind(Konzept) |
| Iterator-Bibliothek | stellt Definitionen für Iteratoren, Iterator-Traits, Adaptoren und Hilfsfunktionen bereit |