Можно ли использовать обработку исключений в constexpr функциях и методах?
Начиная с C++20 (так же известный как C++2a) в constexpr функции можно включать try-catch блок. Сделано это, как я понимаю, для унификации, чтобы не нужно было писать разные функции для ситуаций вычисления в процессе компиляции или рантайма. Ведь constexpr это ещё не гарантия того, что функция будет вычисляться в момент компиляции, а всего лишь разрешение такой возможности.
При этом использовать явный throw запрещено, т.к. это автоматически блокирует возможность функции вычисляться на этапе компиляции. Т.е. входит в противоречие с самой идеей constexpr.
Соответствующий proposal по разрешению try-catch в constexpr функциях можно найти тут.
Продвижение своими сайтами как стратегия роста и независимости