which data structure for a list of object with fast lookup feature
<p>I have a data structure and have to perform lookup on it, I would like to optimize things...</p>

<pre><code>struct Data
{
 std::string id_;
 double data_;
};
</code></pre>

<p>I use currently a <code>std::vector&lt;Data&gt;</code> and <code>std::find</code> algorithm  but I'm wondering if another data structure would be more convenient :</p>

<ul>
<li>hash table ?</li>
<li>map ?</li>
<li>boost multi index container ?</li>
<li>other things ?</li>
</ul>

<p>EDIT:</p>

<p>Each time I receive a message from network I have to lookup into this vector (with id as key), and update/retrieve some informations. (Data structure have more fields than in my example)</p>

<p>EDIT2:</p>

<ul>
<li>I don't care about order.</li>
<li>I have to insert/erase element into this data structure frequently.</li>
</ul>
