假设找到匹配的catch,就处理异常;假设找不到,就退出当前函数(释放当前函数的内存并撤销局部对象),并且继续在调用函数中查找。...【小心地雷】
栈展开期间,释放局部对象所用的内存并运行类类型局部对象的析构函数。
假设一个块直接分配资源,并且在释放资源之前发生异常,在栈展开期间将不会释放该资源。...比如,一个块能够通过调用new动态分配内存,假设该块因异常而退出,编译器不会删除该指针,已分配的内在将不会释放。
由类类型对象分配的资源通常会被适当地释放。...运行局部对象的析构函数,由类类型对象分配的资源通常由它们的析构函数释放。...异常对象本身是被抛出对象的副本。是否再次将异常对象拷贝到catch位置取决于异常说明符类型。