Inhaltsverzeichnis

replace_if()

#include <algorithm>

void replace_if (For first, For last, Pred pred, T neuerwert) 
void replace_if (Exec pol, For first, For last, Pred pred, T neuerwert) 
 
In ranges::replace_if (Range r, Pred pred, T neuerwert, Proj proj = {}) 
In ranges::replace_if (For first, For last, Pred pred, T neuerwert, Proj proj = {}) 

Ersetzt im Bereich [first,last) all jene Elemente, auf die pred(proj(x)) zutrifft, durch neuerwert.

Parameter

first Anfang des Bereiches
last Ende des Bereiches
pred einstelliges Prädikat
neuerwert zuzuweisender Wert
proj einstelliger Funktor (Vorgabe = std::identity)
pol parallele Ausführungsart

Ergebnis

Rückgabewert: keiner bzw. last.

Siehe auch

replace(), replace_copy(), replace_copy_if().

Beispiel

replace_if.cpp
#include <algorithm>
#include <string>
#include <iostream>
 
int main()
{
  std::string s = "Harro, Wert";
  std::cout << s << '\n';
 
  std::replace_if(begin(s), end(s), [](char c) { return c < 'l'; }, 'x');
 
  std::cout << s << '\n';
}