复习
文章平均质量分 61
。。。
Dutkig
奔跑吧, 用绝望追不上的速度。
展开
-
STL空间配置器(一级配置器及二级配置器)
前言在我们日常使用STL中的容器时,我们是几乎感受不到空间配置器的存在,因为他一直在默默工作,我们在之前的这一篇博客中也大概介绍过:C++(21)——vector及实现自定义vector以及allocator和iterator空间配置器,整个STL的操作对象都存放在容器之后。而容器需要配置空间以放置资料,这也就是空间配置器的作用。注:STL提供了自定义空间配置器的接口,但是不建议自己定义,因为系统提供的空间配置器是足够安全且高效的,所以在我们使用时,一般会使用默认的配置器。template<cl原创 2022-04-06 23:09:16 · 2077 阅读 · 2 评论 -
复习:字节对齐的原则
为什么需要字节对齐?现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。字节对齐的作用及原因各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。比如有些架构的CPU在访问一个没有进行对齐的变量的时候会发生错误,那么在这种架构下编程必须保证字节对齐.其他平原创 2022-04-01 11:20:52 · 205 阅读 · 0 评论 -
复习:Linux中的软连接和硬连接
前言首先我们先来复习以下Linux的文件系统Linux的文件系统是EXT4以EXT4文件系统格式化磁盘时,将磁盘分成了三个区,分别是:1、superblock:记录文件系统的整体信息,包括inode和block的总量,使用量、剩余量。2、inode:很多节点,给每一个inode都分配一个编码,一个文件会有一个inode节点,在此inode中存储文件的属性信息以及存储文件内容的那些block号3、block: 很多block,给每一个block都分配了一个编号,每个block用于存储文件的真实内原创 2022-03-30 21:37:30 · 342 阅读 · 0 评论 -
复习:结构体大小的内存对齐问题
内存对齐内存对齐是指:任意单个类型的数据都需要存放在能被它本身大小所能整除的地址上。基本类型的大小,char(1),short(2),int(4) ,long(4),long long(8),float(4),double(8) ,指针(4/8)预处理指令:#pragma pcak(1) ——内存以1对齐内存对其的规则前面的所有成员字节相加要能整除当前成员的字节数;结构体最终的大小,一定能整除单个类型的大小。注意 是==单个类型!!!!即基本数据类型。示例类型1typedef s原创 2022-03-29 18:45:27 · 438 阅读 · 0 评论 -
复习:详解函数重载
什么是函数重载?一组函数,处于同一个作用域,其中函数名相同,参数列表的个数或类型不同,那么这一组函数就成为函数重载一组函数要称得上函数重载,一定是处在同一个作用域中函数名同,参数列表同,返回值不同,不叫重载,因为函数符号都相同函数重载是通过函数符号来判断的,如void func(int a);和void func(const int a);这两个函数名相同,参数都为int型,生成的函数符号伟func_int所以不算函数重载。C++如何实现函数重载**C++在C的基础上支持函数重载,是因为C++中函数原创 2022-03-13 19:55:34 · 951 阅读 · 0 评论 -
复习:智能指针
智能指针介绍学习C++的人,一直在接触裸指针,一边感受着它的强大,一边感受着它的坑爹。当然,坑不坑爹在于开发者,指针本身近乎完美,但奈何用的人比较猥琐,给自己埋下无数的坑,还哭喊着指针不好用,那么今天要介绍的智能指针可以释放大家在使用裸指针时的一些压力,当然智能指针无法替代裸指针的全部功能。裸指针到底有什么不好,写过一些C++代码的人应该都能知道,比如下面的原因:忘记释放资源,导致资源泄露(常发生内存泄漏问题)同一资源释放多次,导致释放野指针,程序崩溃明明代码的后面写了释放资源的代码,但是由于程原创 2022-03-18 13:59:41 · 140 阅读 · 0 评论 -
复习:C++的this指针总结
this指针并不是对象的一部分,this指针所占的内存并不会反映在sizeof运算符上,,this指针的类型取决于使用this指针的成员函数类型以及对象类型。在C++中,每个对象都通过this指针来访问自己的地址,this指针时所有成员函数隐含参数,因此在成员函数内部,他可以用来指向调用独对象,成员函数一经编译,方法的参数就会添加一个this指针。this指针不能在静态函数中使用,因为编译器在编译的过程中,静态成员函数只会被标识它是哪一类的静态函数, 并不会添加this指针,因此静态成员函数只能够访问.原创 2022-03-14 10:07:20 · 770 阅读 · 0 评论