Namensräume
Varianten

std::for_each

Aus cppreference.com
< cpp‎ | algorithm

 
 
Algorithm Bibliothek
Funktionen
Original:
Functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Nicht-modifizierende Sequenz Operationen
Original:
Non-modifying sequence operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Modifizierende Sequenz Operationen
Original:
Modifying sequence operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Partitionierungsoperationen
Original:
Partitioning operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Sortierung Operationen (auf sortierten Bereiche)
Original:
Sorting operations (on sorted ranges)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Binary Suchaktionen (auf sortierten Bereiche)
Original:
Binary search operations (on sorted ranges)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Set-Operationen (auf sortierten Bereiche)
Original:
Set operations (on sorted ranges)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Heap-Operationen
Original:
Heap operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Minimum / Maximum Operationen
Original:
Minimum/maximum operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Numerische Operationen
Original:
Numeric operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
C-Bibliothek
Original:
C library
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
 
definiert in Header <algorithm>
template<class InputIt, class UnaryFunction >
UnaryFunction for_each( InputIt first, InputIt last, UnaryFunction f );
Wendet die angegebene Funktion Objekt f dem Ergebnis der Dereferenzierung jeden Iterator im Bereich [first, last), in Ordnung. Wenn InputIt eine veränderliche Iterator ist, kann f die Elemente des Bereichs durch die dereferenziert Iterator ändern. Wenn f ein Ergebnis zurückgibt, wird das Ergebnis ignoriert .
Original:
Applies the given function object f to the result of dereferencing every iterator in the range [first, last), in order. If InputIt is a mutable iterator, f may modify the elements of the range through the dereferenced iterator. If f returns a result, the result is ignored.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Inhaltsverzeichnis

[Bearbeiten]Parameter

first, last -
der Bereich um die Funktion zu verarbeiten
Original:
the range to apply the function to
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
f -
die einstellige Funktion Objekt angewendet werden
Original:
the unary function object to be applied
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Type requirements
-
InputIt must meet the requirements of InputIterator.
-
UnaryFunction must meet the requirements of MoveConstructible. Does not have to be CopyConstructible

[Bearbeiten]Rückgabewert

f. (bis C + +11)
std::move(f). (seit C++11)

[Bearbeiten]Komplexität

Genau last - first Anwendungen f
Original:
Exactly last - first applications of f
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[Bearbeiten]Mögliche Implementierung

template<class InputIt, class UnaryFunction> UnaryFunction for_each(InputIt first, InputIt last, UnaryFunction f){for(; first != last;++first){ f(*first);}return f;}

[Bearbeiten]Beispiel

Im folgenden Beispiel wird ein Lambda-Funktion um alle Elemente eines Vektors inkrementieren und berechnet dann eine Summe von ihnen:
Original:
The following example uses a Lambda-Funktion to increment all of the elements of a vector and then computes a sum of them:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

#include <vector>#include <algorithm>#include <iostream>   struct Sum { Sum(){ sum =0;}void operator()(int n){ sum += n;}   int sum;};   int main(){std::vector<int> nums{3, 4, 2, 9, 15, 267};   std::cout<<"before: ";for(auto n : nums){std::cout<< n <<" ";}std::cout<<'\n';   std::for_each(nums.begin(), nums.end(), [](int&n){ n++;}); Sum s = std::for_each(nums.begin(), nums.end(), Sum());   std::cout<<"after: ";for(auto n : nums){std::cout<< n <<" ";}std::cout<<'\n';std::cout<<"sum: "<< s.sum<<'\n';}

Output:

before: 3 4 2 9 15 267 after: 4 5 3 10 16 268 sum: 306

[Bearbeiten]Siehe auch

gilt eine Funktion einer Reihe von Elementen
Original:
applies a function to a range of elements
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(Funktions-Template)[edit]
range-for-Schleife
führt eine Schleife über Spektrum (seit C++11)
Original:
executes loop over range (seit C++11)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
[edit]
close