以前写过一篇关于成员指针的博文,其中提到了MFC是如何使用成员指针的…
Continue reading “C++成员指针”
Month: October 2008
构造函数中抛出异常会发生什么?
曾有人问了我个问题:如果在构造函数中抛出异常会怎么样?
现在可以回答了。
构造函数中抛出异常的主要问题是:当有多个资源分配时,如果出现异常,如何释放已经成功分配的资源。
下面是TCPL中推荐的一种方法:基本思想是将资源封装在对象中,然后将该对象以成员变量的形式聚合入你的类中。这个封装类在其析构函数中释放资源。这样,当你的类的构造函数中出现异常后,编译器会调用封装类的对象的析构函数,释放资源。