std::for_each_n
Актуально для C++23.
#include <algorithm>
Актуально на 2024-10-14.
Define overload #1
template<class InputIterator, class Size, class Function> constexpr InputIterator for_each_n(InputIterator first, Size n, Function f);
Применяет унарный предикат "f" к каждому элементу из диапазона [first, first + n].
Вернёт итератор first + n.
Example, possible implementation
Define overload #2
template<class ExecutionPolicy, class ForwardIterator, class Size, class Function> ForwardIterator for_each_n(ExecutionPolicy&& exec, ForwardIterator first, Size n, Function f);
TODO
Example, possible implementation
Examples
Example 1:
#include <iostream> #include <algorithm> #include <vector> template<class T> auto print(const std::vector<T>& v) { for (auto c : v) std::cout << c << ' '; } int main() { std::vector<int> vec{0,1,2,3,4,5,6,7,8,9}; std::for_each_n(std::begin(vec), std::size(vec), [](auto& data) { data *= 10; }); print(vec); }
0 10 20 30 40 50 60 70 80 90
Changelog
C++26
TODOC++23
TODOC++20
TODOC++17
TODOC++14
TODOC++11
TODOSee also
TODO
This page was last modified on 2024-10-14