C++异常处理
维基百科,自由的 encyclopedia
异常处理(exception handling)是C++的一项语言机制,用于在程序能处理异常事件。
此条目的引用需要清理,使其符合格式。 (2013年6月24日) |
异常事件在C++中表示为异常对象(exception object)。异常事件发生时,由操作系统为程序设置当前异常对象,然后执行程序的当前异常处理代码块,在包含了异常出现点的最内层的try
块,依次匹配同级的catch
语句。如果匹配catch
语句成功,则在该catch块内处理异常;然后执行当前try...catch...
块之后的代码。如果在当前的try...catch...
块没有能匹配该异常对象的catch
语句,则由更外一层的try...catch...
块处理该异常;如果当前函数内的所有try...catch...
块都不能匹配该异常,则递归回退到调用栈的上一层函数去处理该异常。如果一直回退到主函数main()
都不能处理该异常,则调用系统函数terminate()
终止程序。