码迷,mamicode.com
首页 > 其他好文 > 详细

构造函数和析构函数

时间:2019-09-25 12:39:02      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:return   sed   设置   必须   构造   clu   自动   设备   ima   

C++为什么要有构造函数和析构函数?

传送门:https://blog.csdn.net/u013565071/article/details/78267440

先说一下生活中的场景,大家买的各种电子设备,是不是有个叫出厂设置,就是根据需要给这些设备初始化,进行一些设置

比如时间你得是你那个地方的吧,是美国就不合理了。

同时,当这些设备你不用的时候,你可以买个别人,但是不可能就直接给别人了,你里面可能有些东西,你不想让别人知道

你就必须把你设备里的数据清理掉,不然就像那个香港修电脑哪个^_^

那么c++对象的初始化和清理是两个很重要的安全问题

对象未初始化,你用的时候结果是未知的

同时用完不清理,也会造成安全问题,比如内存泄露什么的

c++中提供了构造函数和析构函数来解决上述两个问题

构造函格式 类名()

没有返回类型,void也不需要

可以由参数,可以重载

 

析构函数格式 ~类名()

没有返回类型,void也不需要

不可以有参数,不可以发生重载

 

这两个函数,都是由系统自动调用,不需要认为调用。而且你可以不写,编译器会帮你写,但是里面的实现是空实现

技术图片
 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 
 4 class stu
 5 {
 6     public:
 7         stu()
 8         {
 9             puts("stu构造函数调用"); 
10         }
11         ~stu()
12         {
13             puts("stu析构函数调用");
14         }
15         int s_age;
16 };
17 
18 void test()
19 {
20     stu s;
21 }
22 
23 int main()
24 {
25     test();
26     return 0;
27 }
View Code

技术图片

 

构造函数和析构函数

标签:return   sed   设置   必须   构造   clu   自动   设备   ima   

原文地址:https://www.cnblogs.com/mch5201314/p/11583652.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!