noexcept
: Declaring Functions That Do Not Throw ExceptionsAs of C++11, if a function does not throw any exceptions and does not call any functions that throw exceptions, you can explicitly state that a function does not throw exceptions. This indicates to client-code programmers that there’s no need to call the function in a try
block. Simply add noexcept
to the right of the function’s parameter list in both the prototype and the definition. For a const
member function, you must place noexcept
after const
. If a function that’s declared noexcept
calls another function that throws an exception or executes a throw
statement, the program terminates. We’ll say more about noexcept
in Section 24.4.