17.6 noexcept
: Declaring Functions That Do Not Throw Exceptions
As 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.
Get C++ How to Program, 10/e now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.