#include #include #include int main() { auto v1 = std::vector{1.0, 2.0, 3.0}; auto v2 = std::vector{2.0, 3.0, 4.0}; auto result1 = std::transform_reduce(begin(v1), end(v1), 100.0, std::plus{}, [](auto x){ return x*x; }); std::cout << result1 << '\n'; auto result2 = std::transform_reduce(begin(v1), end(v1), begin(v2), 100.0); std::cout << result2 << '\n'; auto result3 = std::transform_reduce(begin(v1), end(v1), begin(v2), 100.0, std::plus{}, std::multiplies{}); std::cout << result3 << '\n'; }