хочу сюди!
 

Людмила

49 років, риби, познайомиться з хлопцем у віці 46-60 років

Замітки з міткою «с++»

Проверка наличия ключа и вставка в hash_map

  • 23.03.09, 19:32
  • с++
Часто бывает нужно проверить есть ли некий ключ в hash_map и в случае его отсутствия - вставить его с некоторым значением.

Это наиболее эффективно делать  следующим образом:

std::pair<TKeyHash::iterator, bool> res = _keys.insert(TKeyHash::value_type(key, curTime.Unix()));
if (res.second) // если значение положительное - ключа небыло и он вставился
{
 // делаем что-то со значением...
}
else // ключ уже был и итератор смотрящий на значение помещен в res.first
{
 // делаем что-то со значением...
}