namespace cpp {}

C++ lernen, kennen, anwenden

Benutzer-Werkzeuge

Webseiten-Werkzeuge


kennen:lib:replace_copy

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.


Vorhergehende Überarbeitung
kennen:lib:replace_copy [2023-10-14 11:53] (aktuell) – [Ergebnis] rrichter
Zeile 1: Zeile 1:
 +====== replace_copy() ======
 +''#include'' [[..:include:algorithm]]
 +
 +<code cpp>
 +Out replace_copy (In first, In last, Out result, T alterwert, T neuerwert) 
 +Out replace_copy (Exec pol, In first, In last, Out result, T alterwert, T neuerwert) 
 + 
 +[last, out] = ranges::replace_copy (Range r, Out result, T alterwert, T neuerwert, Proj proj = {}) 
 +[last, out] = ranges::replace_copy (In first, In last, Out result, T alterwert, T neuerwert, Proj proj = {}) 
 +</code>
 + Kopiert den Bereich [first,last) nach [result,…) und ersetzt dabei Elemente mit ''proj(e) == alterwert'' durch ''neuerwert''
 +==== Parameter ====
 +==== Parameter ====
 +| ''first'' | Anfang des Bereiches |
 +| ''last''  | Ende des Bereiches |
 +| ''first'' | Anfang des Zielbereiches |
 +| ''alterwert'' | zu ersetzender Wert |
 +| ''neuerwert'' | zuzuweisender Wert|
 +| ''proj''  | einstelliger Funktor (Vorgabe = ''std::identity'') |
 +| ''pol''   | [[..:include:execution|parallele Ausführungsart]] |
 +==== Ergebnis ====
 +Rückgabewert: Iterator auf das Ende des Zielbereiches bzw. ''{last, result + (last - first)}''
 +als Struktur mit Elementen namens ''in, out''.
 +
 +
 +==== Siehe auch ====
 +[[replace]],
 +[[replace_copy_if]],
 +[[replace_if]].
 +
 +==== Beispiel ====
 +<code cpp replace_copy.cpp>
 +#include <algorithm>
 +#include <iterator>
 +#include <string>
 +#include <iostream>
 +
 +int main()
 +{
 +  std::string s = "Harro, Wert";
 +  std::string t;
 +  std::cout << s << '\n';
 +
 +  std::replace_copy(begin(s), end(s), std::back_inserter(t), 'r', 'l');
 +
 +  std::cout << t << '\n';
 +}
 +</code>
  

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki