В С++ 20 было создано много (большинство?) С++ - стандартных библиотечных алгоритмов constexpr
. Тем не менее - std::accumulate
не имеет.
кажется, что это могло быть:
template<class InputIt, class T>
constexpr T accumulate(InputIt first, InputIt last, T init)
{
for (; first != last; ++first) {
init = std::move(init) + *first;
}
return init;
}
Итак - есть ли причина, по которой он не был constexpr
также издан?
Примечание. Этот вопрос был мотивирован моим ответом на этот вопрос о накоплении во время компиляции.