在上一则教程中,通过与 C 语言相比较引出了 C++ 的相关特性,其中就包括函数重载,引用,this 指针,以及在脱离 IDE 编写 C++ 程序时,所要用到的 Makefile的相关语法。本节所要叙述的是 C++的另外两个重要的特性,也就是构造函数和析构函数的相关内容,这两部分内容也是有别于 c语言而存在的,也是 c++的一个重要特性。
构造函数
类的构造函数是类的一种特殊的成员函数,它会在每次创建新的对象的时候执行,构造函数的名称和类的名称是完全相同的,并不会返回任何的类型,也不会返回 void。构造函数可以用于为某些成员变量设置初始值。
比方说,我们现在有如下所示的一段代码:
#include <iostream>
using namespace std;
class Person{
private:
char *name;
int age;
char *work;
public:
Person() {cout << "Person()" << endl;}
};
int main(int argc, char **argv)
{
Person per;
return 0;
}
在主函数中,定义 Person per 的同时,就会自动地调用 Person() 函数,那么不难猜出,执行 test 文件的时候,输出结果如下: