Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2005-01-17 21:35:46


Larry Evans <cppljevans_at_[hidden]> writes:

> But the aforementioned
>
> t.get_inherit_side<...>:::type::left_type::value;
>
> does compile? OK, now I see. Instead of >::head_type, there
> should have been >::type::head_type. Does it make sense now?

Nope. I'm still looking for a member whose name is get_tail<...> and
not seeing any such thing.

> After all, it's no different than:
>
> t.super_type_expr::member_var_name;
>
> for some super_type_expr which access's some super_type of t and
> where member_var_name is some member variable defined in that
> super_type.

Oh, get_tail<...> was a base class of typeof(r)?

If so, I missed that possibility. C++ syntax is weird.

> Could you elaborate on how the kinds of element access in boost::tuple
> and that of tuple_type in get_ith_head_test.cpp are different?

As I wrote earlier, "the code in the book is looking up a member by
its type, not by its index."

-- 
Dave Abrahams
Boost Consulting
http://www.boost-consulting.com

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