自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(2)
  • 问答 (5)
  • 收藏
  • 关注

原创 关于Linux/Unix系统编程手册第四章的练习二的解答

我想分享一下我的解答,因为我觉得很多人的解答不对,他们仅仅是将空洞复制成了’\0’写入了磁盘而已。正确的方法应该是遇到’\0’就调用lseek。(假设不会有除空洞外的原因使’\0’在被读文件中存在)所以下面是我写的代码。p.s.如果空洞很大的话,那么空洞就有存在的必要,所以只有小部分空洞真的被写入了’\0’,其他空洞只是在读出时表现为’\0’而已。(这只是我的理解)#include <sys/stat.h>#include <fcntl.h>#include "tlpi_hd

2021-09-23 13:50:15 171

原创 2021-05-04

#我想写一个关于移动构造函数和移动赋值运算符的新手笔记1.std::move的作用只是返回一个右值引用。2.也许值得思考的是为什么不把左值引用也变成移动而非构造的。我的理解是对于vector和string这样本身就是行为类值的类只有在特殊情况下才应该移动。3.那么定义移动构造和移动赋值的意义何在?移动构造和移动赋值不同于普通的拷贝构造和赋值,其只要保留指针并且把移后源对象至于可析构的状态就可以。4.记录一下我之前不理解的一段代码void StrVec::reallocate(){ auto n

2021-05-04 13:43:21 69

空空如也

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

TA关注的人

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