在程序中使用C++异常处理机制时,是必须调用throw()才会抛出异常吗?
以前在程序中从没用过异常处理,调用函数时都是判断函数返回值,然后进行后续的处理。最近看了看C++的异常处理部分,有些地方不是很清楚,请大家给指点一下:
1 是不是程序中只有显式地调用throw()程序才会抛出异常,还是说无论加不加此句,只要异常发生了,程序就会自动抛出
异常,只要使用了catch(...)就可以扑捉到;
2 究竟何为异常?调用系统API时有时会调用失败,然后调用GetLastError()可以知道错误码,这个算是异常吗?
我感觉异常处理方法使用起来很容易,使用时机不太好把握,请教大家了。