Boost logo

Boost Users :

From: David Abrahams (dave_at_[hidden])
Date: 2006-05-09 07:32:12


Lucio Flores <dogboy_l_at_[hidden]> writes:

> --- David Abrahams <dave_at_[hidden]> wrote:
>
>> Lucio Flores <dogboy_l_at_[hidden]> writes:
>>
>> > I posted this question a few months ago, but I got pulled away to deal with
>> > more pressing work issues. So here it goes again:
>> >
>> > I'm trying to use lambda expressions to implement 'twice'. So I came up
>> with
>> >
>> >
>> > typedef mpl::apply<_1, mpl::apply<_1, _2> > lambda_type;
>> >
>> > typedef lambda_type<boost::add_pointer<_1>, int> result_type;
>>
>> Surely that doesn't compile(?) lambda_type is a type; you can't follow
>> it with a template argument list.
>>
>
> You're right! .... But it did compile....

What compiler ate that without complaint?

> So what's the correct usage? Would
> it be:
>
> typedef mpl::apply< lambda_type, boost::add_pointer<_1>, int>::type
> result_type;

Yes, that looks correct.

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

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