std :: unordered_map uso de memoria muy alto

Ayer intenté usarstd::unordered_map y este código me confundió cuánta memoria usó.

typedef list<string> entityId_list;
struct tile_content {
   char cost;
   entityId_list entities;
};
unordered_map<int, tile_content> hash_map;

for (size_t i = 0; i < 19200; i++) {
   tile_content t;
   t.cost = 1;
   map[i] = t;
}

Todas estas partes del código se compilaron en MS VS2010 en modo de depuración. Lo que he visto en mi administrador de tareas fue aproximadamente 1200 kb de proceso "limpio", pero después de llenarhash_map utiliza 8124 kb de memoria. ¿Es el comportamiento normal deunordered_map? ¿Por qué se usa tanta memoria?

Respuestas a la pregunta(6)

Su respuesta a la pregunta