title: c++ map erase()
body: <p>I have a map in which my value is dynamically allocated. When I do erase() on an element, does this free the memory OR just removes the element from the map.</p>
  
  <p>I actually need to keep the memory as is. I just need to remove the element from the map since this dynamically allocated structure is used elsewhere in the code. </p>