como o boost multi_index é implementado
Tenho algumas dificuldades para entender como o Boost.MultiIndex é implementado. Vamos dizer que tenho o seguinte:
typedef multi_index_container<
employee,
indexed_by<
ordered_unique<member<employee, std::string, &employee::name> >,
ordered_unique<member<employee, int, &employee::age> >
>
> employee_set;
Eu imagino que eu tenho uma matriz,Employee[]
, que realmente armazena oemployee
objetos e dois mapas
map<std::string, employee*>
map<int, employee*>
com nome e idade como chaves. Cada mapa tememployee*
valor que aponta para o objeto armazenado na matriz. Tudo bem?