title: Alternative to stdext::hash_map for performance reasons
body: <p>I'm working on a high performance application where all calls must be justified.  I have a map that is used once in the beginning of each transaction to do a lookup that I would like to improve upon.  The map is loaded at startup and does not change after that.  </p>
  
  <p>The key in the map below is an std::string but it can it changed to a char array if needed.  C or C++ as a solution is fine.  </p>
  
  <pre><code>  typedef stdext::hash_map&lt;std:string, int&gt; symbols_t;
  </code></pre>
  
  <p>Does anyone know of any other solutions that would eliminate the lookup or be faster?</p>
  
  <p>Thanks ahead of time for your help.</p>
  
  <p>Additional info from edits:<br>
  1. The hash_map currently has 350,000 elements.<br>
  2. Each key value is typically between 4 and 10 characters in length.<br>
  3. Information is received on a callback from a third party API.  The callback is given a symbol that is used as the key value when doing a the map lookup.  The rest of the software is driven off of the int returned from the map lookup.  </p>
  
  <p>THANKS:  Thanks all for your input.  You've given me a few avenues to explore.  I will definitely try these out.  I appreciate the help.  </p>