构造函数与析构函数的区别

2025-02-24 10:36:18
推荐回答(2个)
回答1:

1、概念不同:

析构函数:对象所在的函数已调用完毕时,系统自动执行析构函数。

构造函数:是一种特殊的方法。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。

2、作用不同:

析构函数:析构函数被调用。

构造函数:为对象成员变量赋初始值

3、目的不同:

析构函数:”清理善后” 的工作

构造函数:主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。

回答2:

析构函数与构造函数相反,当对象脱离其作用域时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后”
的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。