C++ 构造函数的异常是一个比较难缠的问题,很多时候,我们可能不去考虑这些问题,如果被问到,有人可能会说使用RAII管理资源. 但你真的考虑过如果构造函数失败了,到底会发生什么吗,前面构造成功的成员.基类对象应该怎样回收? 最近在知乎上看到有人提到这个问题: http://www.zhihu.com/question/22889420 看了陈硕的回答,抱着怀疑的心态写代码加以验证. 在此之前,先不急着上代码,啰嗦几句话. 首先问4个问题,这是从 Herb sutter 的<More Except…