1. 可以在构造函数中抛出异常。构造函数出现异常,不会调用析构函数,已构造的成员会逆序调用自身析构函数析构掉,但为了保证内存不泄露,尽量使用auto_ptr. “对象构造不可分割,要么完全成功,要么完全失败。”
https://www.cnblogs.com/KevinSong/p/3323372.html
2. 不可以早析构函数中抛出异常。虽然可以设置try catch内部捕获,却是不推荐的,因为从根本上说陷入了一个矛盾之中。
内部捕获问题参考SEH和FS:[0]寄存器详解:
1. 可以在构造函数中抛出异常。构造函数出现异常,不会调用析构函数,已构造的成员会逆序调用自身析构函数析构掉,但为了保证内存不泄露,尽量使用auto_ptr. “对象构造不可分割,要么完全成功,要么完全失败。”
https://www.cnblogs.com/KevinSong/p/3323372.html
2. 不可以早析构函数中抛出异常。虽然可以设置try catch内部捕获,却是不推荐的,因为从根本上说陷入了一个矛盾之中。
内部捕获问题参考SEH和FS:[0]寄存器详解: