Добавление спецификатора noexcept для методов contains(p0458)/count/find

michail.vms
michail.vms

Предлагаю добавить спецификатор noexcept к функции contains из p0458 (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0458r0.html), а также к функции count стандартных контейнеров. А для метода find в качестве спецификации noexcept, если соответствующий конструктор итератора тоже noexcept.

 

Полагаю, что спецификатор noexcept хорошо согласуется с неявным контрактом, который подразумевается для функций contains/count/find, применяемых для контейнеров как минимум с базовой гарантией исключений.

1
рейтинг
2 комментария
Андрей Руссков

хоть это и является признаком дурного тона, компараторы тоже могут кидать исключения.

Андрей Руссков
WPMGPRoSToTeMa

Андрей Руссков, в таком случае можно выставлять noexcept в зависимости от того является ли компаратор noexcept.

WPMGPRoSToTeMa
Другие идеи
Группа создана, чтобы собирать предложения к стандарту C++, организовывать их внутренние обсуждения, помогать готовить их для отправки в комитет и защищать на общих собраниях в рабочей группе по С++ Международной организации по стандартизации (ISO).
Все предложения