|  | Home | Libraries | People | FAQ | More | 
template< class SinglePassRange, class Value > Value accumulate(const SinglePassRange& source_rng, Value init); template< class SinglePassRange, class Value, class BinaryOperation > Value accumulate(const SinglePassRange& source_rng, Value init, BinaryOperation op);
            accumulate is a generalisation
            of summation. It computes a binary operation (operator+ in the non-predicate version) of init and all of the elements in rng.
          
The return value is the resultant value of the above algorithm.
            Defined in the header file boost/range/numeric.hpp
          
SinglePassRange is
                a model of the Single
                Pass Range Concept.
              Value is a model
                of the AssignableConcept.
              operator+
                is defined for a left-hand operand of type Value
                and a right-hand operand of the SinglePassRange
                value type.
              Value.
              SinglePassRange is
                a model of the Single
                Pass Range Concept.
              Value is a model
                of the AssignableConcept.
              BinaryOperation is
                a model of the BinaryFunctionConcept.
              Value is convertible
                to BinaryOperation's
                first argument type.
              SinglePassRange's
                value type is convertible to BinaryOperation's
                second argument type.
              BinaryOperation
                is convertible to Value.
              
            Linear. Exactly distance(source_rng).