艾特商业网

构造函数和析构函数(构造函数)

更新时间:2023-08-28 15:21:25

导读 你们好,最近小艾特发现有诸多的小伙伴们对于构造函数和析构函数,构造函数这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看

你们好,最近小艾特发现有诸多的小伙伴们对于构造函数和析构函数,构造函数这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。

1、 双击或右击鼠标打开桌面上的DEVc软件并使其运行。Dev-C是一个入门级的C/C集成开发环境(IDE),非常适合刚开始学习C的学者在电脑Windows窗口的运行环境下使用。

2、 这个软件非常免费,源代码是按照GPL许可协议分发的。它极大地集成了许多免费软件,如GCC编译器,GDB调试器和MinGW的AStyle格式管理器。非常试用,而且界面分类清晰,功能非常强大。

3、 单击该文件并选择新的源代码。此时,新创建的代码文本仍未命名,它是一个空的已命名文件。下面,我们可以通过界面左上角的文件选项,选择保存为电脑中的任意磁盘。边肖下次能更好地找到文件。

4、 我把它放在我电脑的桌面上。当然,你可以根据自己的需求选择任何磁盘。

5、 类的初始化函数

6、 生成对象时:自动调用构造函数。

7、 每次删除一个类的对象,都会自动调用执行。

8、 目的是消除对象的影响。例如,释放对象中指针成员所指向的内存空间。

9、 示例:

10、 StructDoctorVisit {//记录int年月日的健康检查结果。

11、 bool status;

12、 DoctorVisit * next;

13、 }’

14、 类CMan {//用于跟踪一个人的健康私有:

15、 char SZ name[20];//区分不同的人DoctorVisit * healthRecords//历次体检结果

16、 int recordLen//公开了多少体检结果:

17、 彩车高度、重量;//保存一个人的身高体重信息CMan(char * name);//构造函数

18、 CMan(char *name, DoctorVisit *visitList);//构造函数 void setName();

19、 int value figure();//判断一个人的体重是否正常。

20、 Doctor visit getheavyweight (int number); //Check the results of the first physical examination.

21、 ~ CMan();//析构函数

22、 };

23、 与类名同名的成员函数,可以有参数但没有返回值(不接受void)。它的功能是初始化一个对象,比如给一个成员变量赋一个初始值。

24、 对象生成时构造函数自动被调用。

25、 如果定义类时没写构造函数,则编译器生成一个缺省的无参数的构造函数。缺省构造函数无参数,什么也不做。

26、 如果定义了构造函数,则编译器不生成缺省的无参数的构造函数。

27、 为类编写构造函数是好的习惯,能够保证对象生成的时候总是有合理的值。

28、 一个类可以有多个构造函数,各个构造函数的参数不同

29、 成员函数的一种

30、 名字与类名相同,在前面加‘~’ 没有参数和返回值

31、 一个类最多只能有一个析构函数。

32、 析构函数对象消亡时即自动被调用。可以定义析构函数来在对象消亡前做善后工作,比如释放分配的空间等。

33、 如果定义类时没写析构函数,则编译器生成缺省析构函数。缺省析构函数什么也不做。

34、 如果定义了析构函数,则编译器不生成缺省析构函数。

35、 class Complex {

36、 private :

37、 double real, imag;

38、 public:

39、 void Set( double r,double i);

40、 }; //缺省构造函数。

41、 Complex c1;//构造函数被调用

42、 Complex * pc=new Complex;//构造函数被调用

43、 private :

44、 double real,imag; public:

45、 Complex( double r, double i=0);

46、 }; //定义了一个构造函数。

以上就是构造函数这篇文章的一些介绍,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!