cpp后端学习笔记

1.shared_ptr的循环引用

出现的原因是shared_ptr互相指向对方,结果内存区域的引用总是大于0的,结果资源持久不能释放。

智能指针是对RAII的实现,用类的初始化和析构来管理资源,在初始化的时候分配资源析构释放资源。

2.stl

stl主要是六个组成部分,其中容器是数据存储的容器,分为序列式容器和关联式容器,序列式容器比如list、deque,关联式容器有set、map。

迭代器提供了遍历访问数据的方法,对于链表这些并不总是可以通过下标去访问于是可以用迭代器。

算法,通过迭代器和容器联系起来,例如排序算法,去重。

3.前置++和后置++

前置返回的是对象的引用效率更高,后置需要创建新的对象。

4.trival destructor

直译就是不重要的析构函数,这些析构函数不需要像智能指针里的必须用,比如减少引用释放空间,这里的是可有可无的,编译器为了效率可能不会产生,对于这些在new之后的delete就可以不调用析构函数。

相关推荐
xieliyu.6 小时前
MySQL 全套入门笔记:基础、库操作、数据类型
数据库·笔记·mysql
XGeFei6 小时前
【Fastapi学习笔记(7)】—— Fastapi 中间件、前端跨域请求
笔记·学习·fastapi
问心无愧05136 小时前
ctf show web入门109
android·前端·笔记
有点。6 小时前
C++(贪心算法二)
开发语言·c++·贪心算法
有点。6 小时前
C++贪心算法一(练习题)
开发语言·c++·贪心算法
Coder-magician6 小时前
《代码随想录》刷题打卡day12:二叉树part02
数据结构·c++·算法
随意起个昵称7 小时前
线性dp-LIS题目5(导弹拦截,二分优化)
c++·算法·动态规划
光电笑映7 小时前
进程间通信:深入 System V IPC:共享内存、消息队列与信号量
linux·运维·服务器·c++
xian_wwq7 小时前
【学习笔记】倾斜摄影、高斯泼溅(3DGS)、点云与数字孪生“族谱”全盘点
笔记·学习·3d
a诠释淡然7 小时前
C++模板元编程—现代C++的黑魔法
开发语言·c++