![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
accumulateBoost , Chapter 1. Fusion 2.2 , Functions
|
Параметр |
Требования |
Описание |
---|---|---|
|
Модель Forward Sequence |
Аргумент операции |
|
Любой тип |
Первоначальное состояние |
|
|
Аргумент операции |
accumulate(seq, initial_state, f);
Тип возврата: Любой тип
Семантии: Эквивалент f(... f(initial_state,e1),e2) ...eN)
где e1 ...eN
являются последовательными элементами seq.
Linear, ровно
приложения result_of::размер
>>><Последовательность>::значениеf
.
#include <boost/fusion/algorithm/iteration/accumulate.hpp> #include <boost/fusion/include/accumulate.hpp>
struct make_string
{
typedef std::string result_type;
template<typename T>
std::string operator()(const std::string& str, const T& t) const
{
return str + boost::lexical_cast<std::string>(t);
}
};
...
const vector
<int,int> vec(1,2);
assert(accumulate(vec,std::string(""), make_string()) == "12");
Статья accumulate раздела Chapter 1. Fusion 2.2 Functions может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
реклама |