抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

misakivv的博客

霜蹄千里骏,风翮九霄鹏

C++基础02

构造函数与析构函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
构造函数:在对象实例化时被系统调用,仅调用一次。

特点:

1. 构造函数必须与类名同名
2. 可以重载
3. 没有返回值类型,void也不行

析构函数:在对象结束时系统自动执行。

特点:

1. 格式:~类名()
2. 在调用时释放内存资源
3. ~类名()不加参数
4. 没有返回类型,void也不行
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
linux@ubuntu:~/11_2$ vim test04.cpp
linux@ubuntu:~/11_2$ g++ test04.cpp -o test04
linux@ubuntu:~/11_2$ ./test04
构造函数执行!
例子
析构函数执行!
linux@ubuntu:~/11_2$ cat test04.cpp
#include<iostream>
#include<string>
using namespace std;
class Dog //定义一个狗类,并在里面写上构造函数和析构函数
{
public:
Dog();
~Dog();
};
int main()
{
Dog dog; //使用Dog实例化一个dog对象
cout<<"例子"<<endl;
return 0;
}
Dog::Dog() //类的函数可以在类里实现,也可以在类外实现,不过在类外实现需要使用"::",这里是定义在类的外面
{
cout<<"构造函数执行!"<<endl;
}
Dog::~Dog() //类的析构函数定义在类的外面
{
cout<<"析构函数执行!"<<endl;
}

image-20231102105601090.png

评论