I am using Dev-C++ 4.9.8.0,with lambda expression:
.......................
class A{
..............
int result;
double function2(const int& n)
..........................
double function3(const int& Q,const int& N)
.......................
double function1(const int& q, int& n){
    double result=0.0;
    int loopvalue=0, totaltime=n;
    n%=q;
    ++thenumbern;
   ( for_loop(var(loopvalue)=0,var(loopvalue)<=var(totaltime),++var(loopvalue),
        var(result)+=( bind(&A::function2,_2)*bind(&A::function3,_1,_2))))(q,n);
    return result;
But the complier told me that:
................................
\boost\lambda\detail\select_functions.hpp
  instantiated from `Arg::sig<boost::tuples::tuple<A&,.................
instantiated from `RET boost::lambda::lambda_functor_base<boost::lambda::forloop_action, Args>::call(A&, B&, C....................
\boost\lambda\detail\lambda_functors.hpp
  instantiated from `T::sig<boost::tuples::tuple<A&, B&, boost::tuples::null_type, boost::tuples::null_type, ...............  instantiated from here

By the way,  is the result in var(result)   the  double result in function1 or the int result in class A?
Can any one with kindness help me?



网易YEAH.NET免费邮箱:您的终身免费邮箱