Я использую boost::multi_index_container
и пытаюсь сослаться на член члена в аргументе шаблона, но неясно, как это сделать:
struct Foo {
int unique_value;
};
struct Bar {
Foo foo;
double non_unique_value;
};
// I want to refer to some_value in a template argument:
multi_index_container<Bar, boost::multi_index::indexed_by<
ordered_unique< member< Foo, int, &Bar::foo::unique_value > >, // this doesn't work
ordered_non_unique< member< Bar, double, &Bar::non_unique_value > > // this works
> >
Как я могу сослаться на unique_value
в аргументе шаблона? Я понимаю, почему то, что я сделал, не работает: я должен передать, что Foo
является типом, который является членом Bar
, и делать что-то более похожее на Bar::Foo::some_value
, но неясно, как я могу это указать.