|
知识路径: > 嵌入式系统软件基础知识 > 嵌入式系统程序设计 > 嵌入式程序设计语言 > 嵌入式C/C++程序设计要求 > C++程序设计基础 > 类与对象 > 构造函数和析构函数 >
|
相关知识点:2个
|
|
|
|
当对象销毁时,会自动调用析构函数进行一些清理工作。析构函数也与类同名,但在名字前有一个“~”,析构函数也没有返回类型和返回值。析构函数不带参数,不能重载。
|
|
|
若一个对象中有指针数据成员,且该指针数据成员指向某一个内存块,则在对象销毁前,往往通过析构函数释放该指针指向的内存块。对象的析构函数在对象销毁前被调用,对象何时销毁也与其作用域有关。例如,全局对象是在程序运行结束时销毁,自动对象是在离开其作用域时销毁,而动态对象则是在使用delete运算符时销毁。析构函数的调用顺序与构造函数的调用顺序相反。当用户未显式定义构造函数和析构函数时,编译器会隐式定义一个内联的、公有的构造函数和析构函数。默认的构造函数执行创建一个对象所需要的一些初始化操作,但它并不涉及用户定义的数据成员或申请的内存的初始化。
|
|
|