|
Boost Users : |
Subject: Re: [Boost-users] Annoying coding
From: Zachary Turner (divisortheory_at_[hidden])
Date: 2009-01-20 10:52:46
On Tue, Jan 20, 2009 at 9:33 AM, Robert Jones <robertgbjones_at_[hidden]>wrote:
>
> This one IS tested!
>
> #include "boost/lambda/lambda.hpp"
> #include "boost/lambda/bind.hpp"
> #include <vector>
> #include <numeric>
> #include <iostream>
>
> struct A{
> int a;
> std::string b;
> };
>
> int a_sum(int i, const A &v){ return i + v.a; }
>
> int main( )
> {
> using namespace boost::lambda;
> std::vector<A> v;
> for ( unsigned i=1; i != 6; ++i)
> {
> A a = { i, "" };
> v.push_back( a );
> }
>
> int result = std::accumulate(v.begin(),v.end(),0, _1 + bind(&A::a,_2));
> std::cout << result << "\n";
> }
>
>
What compiler are you using? Doesn't work on VC 2005 or 2008. Overload
resolution ambiguity failure on boost::lambda::function_adaptor<Func>::apply
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net