multi_index with base class member

View: New views
2 Messages — Rating Filter:   Alert me  

multi_index with base class member

by david joeyoung :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

please give me some advices.

I get a compile error,when to index on base class member.

the codes are listed below:

struct Foo 
int a; 
}; 
 
struct Bar : public Foo 
int b;
}; 

struct idx0 {};

typedef multi_index_container<
Bar,
indexed_by<
 ordered_unique<
tag < idx0 > ,member < Bar,int,&Bar::a> 
 >
>
> test_type;

Error 1 error C2440: 'specialization' : cannot convert from 'int Foo::* ' to 'int Bar::* '
and the codes are compiled in boost 1.40, vs 2008 sp1




_______________________________________________
Boost-users mailing list
Boost-users@...
http://lists.boost.org/mailman/listinfo.cgi/boost-users

Re: multi_index with base class member

by Steven Watanabe-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

AMDG

david joeyoung wrote:

> please give me some advices.
>
> I get a compile error,when to index on base class member.
>
> the codes are listed below:
>
> struct Foo
> {
>   int a;
> };
>
> struct Bar : public Foo
> {
>   int b;
> };
> <snip>
> member < Bar,int,&Bar::a>
> <snip>
>  
> Error 1 error C2440: 'specialization' : cannot convert from 'int Foo::* ' to
> 'int Bar::* '
> and the codes are compiled in boost 1.40, vs 2008 sp1
>  

You can use the base class in member:

member<Foo, int, &Bar::a>

In Christ,
Steven Watanabe

_______________________________________________
Boost-users mailing list
Boost-users@...
http://lists.boost.org/mailman/listinfo.cgi/boost-users