...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::accumulators::impl::weighted_sum_impl
// In header: <boost/accumulators/statistics/weighted_sum.hpp> template<typename Sample, typename Weight, typename Tag> struct weighted_sum_impl : public accumulator_base { // types typedef numeric::functional::multiplies< Sample, Weight >::result_type weighted_sample; typedef weighted_sample result_type; // construct/copy/destruct template<typename Args> weighted_sum_impl(Args const &); // public member functions template<typename Args> void operator()(Args const &); result_type result(dont_care) const; template<typename Archive> void serialize(Archive &, const unsigned int); };