C++-Record17—构造和析构的基本知识
目录 基本概念 有关构造函数 有关析构函数 案例讲解 构造与析构对函数来说有什么用呢? 总体代码 创建一个对象时,常常需要作某些初始化的工作,例如对数据成员赋初值。注意,类的数据成员是不能在声明类时初始化的。 为了解决这个问题,C++编译器提供了 构造函数 (constructor) 来处理对象的初始化。构造 函数是一种特殊的成员函数,与其他成员函数不同,不需要用户来调用它,而是在建立对象时自动执行。 基本概念 有关构造函数 1、构造函数定义及调用 1)C++中的类可以定义与类名相同的特殊成员函数,这种与类名相同的成员函数叫做构造函数; 2)构造函数在定义时可以有参数; 3)没有任何返回类型的声明。 2、构造函数的调用 自动调用 :一般情况下C++编译器会自动调用构造函数 手动调用 :在一些情况下则需要手工调用构造函数 有关析构函数 1、析构函数定义及调用 1)C++中的类可以定义一个特殊的成员函数清理对象,这个特殊的成员函数叫做析构函数 语法:~ClassName() 2)析构函数没有参数也没有任何返回类型的声明 3)析构函数在对象销毁时自动被调用 2、析构函数调用机制 C++编译器自动调用 案例讲解 class Test { public: Test() //无参数 构造函数 { a = 10; //作用完成对属性的初始化工作 p = (char *)malloc(100);