如果构造函数抛异常,则析构函数不会被调用,已经初始化了成员变量则被系统依次释放,此处可能引起内存泄露
#include <iostream>
class T2{
public:
T2(){
std::cout << "T2()" << std::endl;}
~T2(){
std::cout << "~T2()" << std::endl;}
};
class T1{
public:
T1(){
如果构造函数抛异常,则析构函数不会被调用,已经初始化了成员变量则被系统依次释放,此处可能引起内存泄露
#include <iostream>
class T2{
public:
T2(){
std::cout << "T2()" << std::endl;}
~T2(){
std::cout << "~T2()" << std::endl;}
};
class T1{
public:
T1(){