Свертка сложением в C++
Унарная правая свертка записывается
как (xs + ...) и сворачивает пакет
справа налево в одно выражение.
Для целых аргументов результат имеет тип, подходящий для сложения. Запишем шаблон суммы и выведем значение:
#include <iostream>
template<typename... Ts>
int sum(Ts... xs) {
return (xs + ...);
}
int main() {
std::cout << sum(1, 2, 3, 4) << "\n";
return 0;
}
Измените свертку так, чтобы суммировать
пять слагаемых 2, 4, 6,
8 и 10. Выведите результат.