What is noexcept
-
throw is deprecated in C++11, will be removed in C++20.
noexcept operator
-
A specifier that indicates a function will not throw any exceptions.
If a noexcept function throws an exception, the program terminates via std::terminate().
This can potentially enable the compiler to perform optimizations, as it doesn't need to generate code for exception handling within the function.
noexcept(constant_expression)