Qual é o contêiner STL mais rápido para encontrar?

Tudo bem como prefácio Eu preciso armazenar em cache um subconjunto relativamente pequeno de dados raramente modificados para evitar consultar o banco de dados com tanta frequência por razões de desempenho. Esses dados são muito usados no sentido somente leitura, pois são frequentemente referenciados por um conjunto muito maior de dados em outras tabela

Eu escrevi uma classe que poderá armazenar basicamente a totalidade das duas tabelas em questão na memória enquanto escuta as alterações de confirmação em conjunto com um mecanismo de retorno de chamada seguro de thread para atualizar os objetos em cach

A minha implementação atual tem doisstd::vectors um para os elementos de cada tabela. A classe fornece acesso à totalidade de cada vetor, bem como métodos de conveniência para procurar um elemento específico dos dados da tabela viastd::find, std::find_if etc.

Alguém sabe se está usandostd::list, std::set oustd::map sobrestd::vector para pesquisar seria preferível? Na maioria das vezes, é o que será solicitado desses contêineres após o preenchimento uma vez do banco de dados quando uma nova conexão for estabelecid

ambém estou aberto a usar os recursos C ++ 0x suportados pelo VS2010 ou Boos

questionAnswers(7)

yourAnswerToTheQuestion