自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 构造函数与赋值函数

std::cout << "移动赋值" << std::endl;对于大多数程序员来说,右值引用带来的好处并不是让我们能够编写使用右值引用的代码,而是弄够利用右值引用来实现移动语义的库代码。y关联的是当时计算的x+y的结果,即使以后修改了x,z的值,也不会影响y。

2023-12-14 21:35:17 373 1

原创 c++ 字符串操作函数

把从str1开始含有'\0'结束符的字符串复制到str2开始的地址空间,返回值类型为char*作用是把str2的字符串添加到str1结尾。比较两个字符串str1,str2的大小。计算给定的字符串长度。

2023-12-12 19:41:49 440

原创 C++可变参数模板

可变参数模板使我们可以创建接受可变数量的参数的模板类和模板函数创建可变参数模板,需要理解的几个要点1 模板参数包2 函数参数包3 展开参数包4 递归。

2023-12-10 21:17:05 804 1

原创 数据库面经 MVCC机制

MVCC的核心思想是每个事务在数据库中看到的数据版本是事务开始时的一个快照,而不是实际的最新版本。这样对于每一个记录就会构成一个版本链,用于记录所有修改,每一次进行新的修改后,新的Undo Log会放在版本链的头部。该版本的事务id是否小于min_trx_id(在Readview创建之前,数据已经提交),可以直接访问。若在他们俩之间,则判断该版本事务id是否在m_ids中,如果不在说明事务可以提交访问,否则不能访问。max_trx_id 下一个将要分配的事务id(版本链头事务id+1)

2023-12-10 17:16:28 338 1

原创 Mysql的执行引擎和日志文件

InnoDB 引擎提供了对事务ACID的支持,还提供了行级锁和外键的约束;Memery 就是将数据存放在内存中,数据的处理速度很快,但是安全性不高。MylSAM 引擎不支持事务,也不支持行级锁和外键约束。

2023-12-09 23:47:00 318

原创 Mysql什么时候需要创建索引,什么时候不需要创建

成绩表中的学号不是成绩表的主键,但它和学生表中的学号相对应,并且学生表中的学号是学生表的主键,则称成绩表中的学号是学生表的外键。成绩表中单一一个属性无法唯一标识一条记录,学号和课程号的组合才可以唯一标识一条记录,所以 学号和课程号的属性组是一个主键。关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键。2 直接条件查询的字段 :经常用于WHERE查询条件的字段,这样能够提高整个表的查询速度。其中每个学生的学号是唯一的,学号就是一个主键。

2023-12-09 23:08:53 465

原创 c++map新增数据的三种方法

insert()和emplace()的区别在于insert()在插入元素value时,会先复制一个value,再把复制的value加入到map,而emplace()直接将value插入map;operator[ ] 和 insert()的区别是:对于插入的key在map中已经存在时,insert不会改变已经存在的值;operator[]则相反;共有三种方法分别是 operator[],insert(),emplace()由于底层时红黑数实现,时间复杂度都为o(log n);

2023-12-09 15:53:13 754

原创 c++文件输入和输出

通常 操作系统管理文件,跟踪他们的位置 大小 创建时间等。我们需要的只是将程序与文件相连的途径 让程序读取文件内容的途径以及让程序创建和写入文件的途径。

2023-12-07 23:08:07 1124

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除