namespace cpp {}

C++ lernen, kennen, anwenden

Benutzer-Werkzeuge

Webseiten-Werkzeuge


kennen:lib:move

move()

#include <algorithm>

Out move (In first, In last, Out result) 
Out move (Exec pol, In first, In last, Out result) 
 
[last, res] = ranges::move (Range r, Out result) 
[last, res] = ranges::move (In first, In last, Out result) 

Verschiebt die Elemente e des Bereiches [first,last) nach [result,…). Für alle Elemente wird std::move(e) aus <utility> aufgerufen. Die Elemente des Quellbereichs enthalten danach zwar gültige, aber nicht notwendig ihre alten Werte.

Parameter

first Anfang des Quellbereiches
last Ende des Quellbereiches
result Anfang des Zielbereiches
pol parallele Ausführungsart

Der Anfang des Zielbereichs sollte nicht im Quellbereich liegen, dann wäre move_backward() einzusetzen.

Ergebnis

Rückgabewert: Iterator auf das Ende des Zielbereiches bzw. {last, out + N} mit N = last - first als Struktur mit Elementen namens in, out.

Siehe auch

Beispiel

move.cpp
#include <algorithm>
#include <iostream>
#include <string>
#include <vector>
 
int main()
{
  std::vector<std::string> quelle = { "Dieser", "Text", "wird", "verschoben." };
  std::vector<std::string> ziel;
 
  std::move(begin(quelle), end(quelle), std::back_inserter(ziel));
 
  for(auto e : quelle) std::cout << e << '.'; 
  std::cout << " --> ";
  for(auto e : ziel)   std::cout << e << ' '; 
  std::cout << '\n';	
}
kennen/lib/move.txt · Zuletzt geändert: 2023-10-14 11:51 von rrichter

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki