has_key(key), value_or(key, defaultValue)

kitmouse
kitmouse

добавить в ассоциативные контейнеры из stl (set, map, unordered_set, unordered_map) методы для
1 проверки наличия ключа (возможные имена has_key, contains_key, вставьте_свое) 
2 (только map, unordered_map) получения значения по ключу, либо значения по умолчанию (принимается вторым аргументом), если такого ключа нет (возможное имя get_or, at_or, value_or, вставьте_свое, или как двухаргументная перегрузка at) 

2
рейтинг
3 комментария
Antervis
тогда уж просто bool contains(const Key &key) и Value at(const Key &key, const Value &defaultValue);
Antervis
Дмитрий
В set, map, unordered_set и unordered_map уже есть - count. Т.к. вариант может быть 0 или 1 (false или true), работает будет так же оптимально, как и contains, если его введут. Разница, по сути, только в типе возвращаемого значения, которое автоматически приводится к нужному.
Дмитрий
smertigdon
contains уже одобрили, если не ошибаюсь. А вот перегрузка at - будет шикарно
smertigdon
Другие идеи
Группа создана, чтобы собирать предложения к стандарту C++, организовывать их внутренние обсуждения, помогать готовить их для отправки в комитет и защищать на общих собраниях в рабочей группе по С++ Международной организации по стандартизации (ISO).