IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 《C++析构函数及其拷贝构造函数和运算符重载》 -> 正文阅读

[C++知识库]《C++析构函数及其拷贝构造函数和运算符重载》

C++析构函数

1.概念:通过前面构造函数的学习,我们知道一个对象是怎么来的,那么一个对象有事怎么没的呢?

? 析构函数:与构造函数功能相反,析构函数不是完成对对象本身的销毁,局部对象销毁工作也是由编译器完成的,而对象在销毁时会自动调用析构函数,完成对象中资源的清理工作。

2.特性

? 析构函数是特殊的成员函数,其特征如下:

? 1.析构函数是在类前面加上字符~。

? 2.无参数无返回值类型

? 3.一个类只能有一个析构函数。若未显示定义,系统会自动生成默认的析构函数。注意:析构函数不能重载。

? 4.对象生命周期结束时,C++编译系统自动调用析构函数

? 5.编译器生成的默认析构函数,对自定义类型成员调用它的析构函数。

? 6.如果类中没有申请资源时,析构函数可以不写,直接使用编译器生成的默认析构函数。但是有资源申请时,一定要写,否则会造成资源泄露。

tips:构造函数是让你这个对象在创建时对那些成员进行初始化,析构函数则是对你拥有的这些初始化的对象进行毁灭处理。

C++拷贝构造函数

拷贝构造函数也是特殊的成员函数,有如下几个特征

1.拷贝构造函数是构造函数的一个重载形式

2.拷贝构造函数的参数只有一个且必须是类类型对象的引用,使用传值方式编译器直接报错,因为会引发无穷递归调用。

tips:注意在编译器生成默认的拷贝构造函数中,内置类型是按照字节方式直接实现的拷贝的,而自定义类型是调用其拷贝函数完成拷贝的

tips2:需要写析构函数的类,都需要写深拷贝的拷贝构造

? ? ? ? ? ? 不需要写析构函数的类,默认生成的浅拷贝的拷贝构造就可以用

运算符重载:

前面我们知道了函数的重载,这里我们又看到了运算符的重载,其实他的原理和函数的重载是一样的,有具体的函数名和其参数列表,其返回值类型和参数列表和普通的函数类似。

函数名字为:关键字operator后面接需要重载的运算符符号。

函数原型:返回值类型operator操作符(参数列表)

注意:

不能通过链接其他符号来创建一个新的操作符:比如operator@

重载操作符必须要有一个类类型参数

用于内置类型的运算符,其含义不能改变,比如内置的整形+,不能改变其含义

作为类成员的函数重载时,其形参看起来比操作数数目少一,因为成员函数的第一个参数为隐藏的this。

.* :: sizeof ?:? .注意以上五个运算符不能重载,这个在笔试选择题中经常出现

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-09-25 23:05:06  更:2022-09-25 23:06:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/8 10:21:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码