Namensräume
Varianten
Aktionen

operator+<small>(std::move_iterator)</small>

Von cppreference.com
 
 
Iterator-Bibliothek
Iterator-Konzepte
Iterator-Primitive
Algorithmus-Konzepte und Hilfsprogramme
Indirekte aufrufbare Konzepte
Gemeinsame Algorithmus-Anforderungen
(C++20)
(C++20)
(C++20)
Dienstprogramme
(C++20)
Iterator-Adapter
Bereichszugriff
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
 
Definiert in Header <iterator>
template< class Iter >

<span class="sy1">move_iterator</span><span class="sy1"></span> operator<span class="sy2">+</span>
    <span class="br0">(</span> <span class="kw1">typename</span> move_iterator<span class="sy1"></span><span class="sy4">::</span><span class="me2">difference_type</span> n,

      <span class="kw4">const</span> move_iterator<span class="sy1"></span><span class="sy3">&</span> it <span class="br0">)</span><span class="sy4">;</span>
(seit C++11)
(constexpr seit C++17)
(bis C++20)
template< class Iter >

<span class="kw4">constexpr</span> move_iterator<span class="sy1"></span> operator<span class="sy2">+</span>

    <span class="br0">(</span> <a href="https://cppreference.de/w/cpp/iterator/iter_t"><span class="kw2893">std::iter_difference_t</span></a><span class="sy1"></span> n, <span class="kw4">const</span> move_iterator<span class="sy1"></span><span class="sy3">&</span> it <span class="br0">)</span><span class="sy4">;</span>
(seit C++20)

Gibt den Iterator <span class="t-c"><span class="mw-geshi cpp source-cpp">it</span></span> zurück, inkrementiert um <span class="t-c"><span class="mw-geshi cpp source-cpp">n</span></span>.

Diese Überladung nimmt nur an der Auflösung von Überladungen teil, wenn <span class="t-c"><span class="mw-geshi cpp source-cpp">it.base() + n</span></span> wohlgeformt ist und den Typ Iter hat.

(seit C++20)

Inhalt

<span class="editsection">[<a href="/mwiki/index.php?title=cpp/iterator/move_iterator/operator%2B&action=edit&section=1" title="Edit section: Parameters">edit</a>] <span class="mw-headline" id="Parameters">Parameter</span></span>

n - die Anzahl der Positionen, um die der Iterator inkrementiert wird
it - der Iterator-Adapter, der inkrementiert werden soll

<span class="editsection">[<a href="/mwiki/index.php?title=cpp/iterator/move_iterator/operator%2B&action=edit&section=2" title="Edit section: Return value">edit</a>] <span class="mw-headline" id="Return_value">Rückgabewert</span></span>

it + n

<span class="editsection">[<a href="/mwiki/index.php?title=cpp/iterator/move_iterator/operator%2B&action=edit&section=3" title="Edit section: Example">edit</a>] <span class="mw-headline" id="Example">Beispiel</span></span>

<span class="editsection">[<a href="/mwiki/index.php?title=cpp/iterator/move_iterator/operator%2B&action=edit&section=4" title="Edit section: Defect reports">edit</a>] <span class="mw-headline" id="Defect_reports">Defect reports</span></span>

Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
LWG 3293 C++20 der nicht-member operator+ wurde eingeschränkt auf
erfordern, dass Iter hat
geändert zu
it.base() + n

<span class="editsection">[<a href="/mwiki/index.php?title=cpp/iterator/move_iterator/operator%2B&action=edit&section=5" title="Edit section: See also">edit</a>] <span class="mw-headline" id="See_also">Siehe auch</span></span>

bewegt den move_iterator vorwärts oder rückwärts
(öffentliche Memberfunktion) [edit]
(C++11)
berechnet die Distanz zwischen zwei Iterator-Adaptoren
(Funktionstemplate) [edit]