Boost logo

Boost :

Subject: Re: [boost] [local] Help for the Alternatives section
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2011-03-26 19:46:55


AMDG

On 03/26/2011 04:27 PM, Michael Caisse wrote:
> #include <boost/phoenix/phoenix.hpp>
> #include <boost/phoenix/statement.hpp>
> #include <iostream>
> #include <vector>
> #include <algorithm>
>
> int main() {
> double sum = 0.0;
> int factor = 10;
>
> using namespace boost::phoenix;
> using namespace boost::phoenix::placeholders;
>
> std::vector<double> v(3);
> v[0] = 1.0; v[1] = 2.0; v[2] = 3.0;
> std::for_each(v.begin(), v.end(), (
> ref(sum) += factor * _1,
> std::cout << "Summed: " << ref(sum) << "\n" )
> );
> return 0;
> }
>

This is incorrect. std::cout << "Summed: " is evaluated
eagerly.

In Christ,
Steven Watanabe


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk