为什么要显示调用析构函数
类的自动析构函数,只做两件事:
非静态成员变量的析构
虚基类的析构
如果类内存在手动申请的资源、数据库连接、文件句柄、网络连接,则无法释放,会造成资源泄露
- 类中包含动态资源(如 new 分配的内存)
- 类中持有文件句柄、网络连接、数据库连接等资源
- 实现“资源管理类”或 RAII 模式时
- 想打印调试信息或控制析构行为或逻辑清理行为
类的自动析构函数,只做两件事:
非静态成员变量的析构
虚基类的析构
如果类内存在手动申请的资源、数据库连接、文件句柄、网络连接,则无法释放,会造成资源泄露