Сама функция не генерирует исключения, но параметры ее типа значения могут вызывать исключения при построении .
Следующий код демонстрирует эту ситуацию:
Код: Выделить всё
struct A {
A(bool will_throw) {
std::cerr
Подробнее здесь: [url]https://stackoverflow.com/questions/79343589/can-a-function-be-marked-noexcept-if-it-takes-a-value-type-that-may-throw[/url]
Мобильная версия