title: Why does STL map core dump on find?
body: <p>So, I have this situation where I need to see if an object is in my stl map.  If it isn't, I am going to add it.</p>
  
  <pre><code>char symbolName[] = { 'H', 'e', 'l', 'l', 'o', '\0' };
  map&lt;string,TheObject&gt; theMap;
  if (theMap.find(symbolName)==theMap.end()) {
              TheObject theObject(symbolName);
              theMap.insert(pair&lt;string, TheObject&gt;(symbolName,
                      theObject));
  }
  </code></pre>
  
  <p>I am getting a core dump on the: theMap.find when the object is not already in the map.
  Supposedly, if the item is not in the map, it is supposed to return an iterator equivelent to map::end</p>
  
  <p>What is going on here?</p>
  
  <p>GCC: 3.4.6</p>