自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 问答 (1)
  • 收藏
  • 关注

原创 《操作系统》——进程管理

第一部分:进程和线程1.1进程描述1)进程定义:一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程将一个文件系统中静态的程序,通过操作系统,在内存中让 CPU 执行起来形成一个动态的执行过程2)进程的组成一个进程应该包括正在运行的一个程序的所有格状态信息:程序的代码程序处理的数据程序计数器中的值,指向下一条将运行的指令一组通用的寄存器的当前值,堆、栈一组系统资源(如打开的文件)问:进程与程序的联系?程序是产生进程的基础,进程执行的所有功能在程序中都有相应描述程序每次的

2021-06-26 12:50:50 540

原创 《操作系统》——内存管理

前言:之前有粗略的学过一遍操作系统,但是很多细节都有所忘记了,这一次通过观看b站上清华大学的操作系统课程为主,之前看过的哈工大的操作系统课程为辅,再结合书本和微信公众号上的好文章进行总结观看顺序与课程的顺序相同,即内存管理->进程管理->文件系统管理->输入输出设备管理第一部分:连续式内存分配1.1计算机体系结构及内存分层体系1)计算机体系结构2)内存分层体系这两张图很好的显式了内存的分层及内存的结构3)操作系统在内存管理中要完成的目标抽象:由于操作系统的存在希

2021-06-19 19:09:21 793

原创 《C++Primer》第十六章——模板与泛型编程

第十六章:模板与泛型编程面向对象编程(OOP)和泛型编程都能处理在编写程序时不知道类型的情况,但不同的是OOP能处理类型在程序运行前都未知的情况,而在泛型编程中,在编译时就能获知类型了模板是C++中泛型编程的基础16.1 定义模板1.函数模板2.类模板3.模板参数4.成员模板5.控制实例化6.效率与灵活性16.2 模板实参推断16.3 重载与模板16.4 可变参数模板16.5 模板特例化...

2021-05-21 16:32:09 327

原创 《C++Primer》第十五章——面向对象程序设计

第十五章:面向对象程序设计15.1 OOP:概述1.面向对象程序设计(object-oriented programming)核心思想是数据抽象、继承、动态绑定通过使用数据抽象,可以将类的接口与实现分离通过使用继承,可以定义相似的类型并对其相似关系建模通过使用动态绑定,可以在一定程度上忽略相似类的区别,而以统一的方式使用它们的对象2.继承15.2 定义基类和派生类15.3 虚函数15.4 抽象基类15.5 访问控制与继承15.6 继承中的类作用域15.7 继承中的类作用域15

2021-05-17 15:34:03 335

原创 《C++Primer》第十四章——重载运算与类型转换

第十四章:重载运算与类型转换14.1 基本概念14.2 输入和输出运算符14.3 算术和关系运算符14.4 赋值运算符14.5 下标运算符14.6 成员访问运算符14.7 成员访问运算符14.8 函数调用运算符14.9 重载、类型转换与运算符...

2021-05-14 21:30:11 343

原创 《C++Primer》第十三章——拷贝控制

第十三章:拷贝控制一个类通过定义五种特殊的成员函数来控制此类型对象拷贝、移动、赋值和销毁时做什么包括:拷贝构造函数、拷贝赋值运算符、移动构造函数、移动赋值运算符和析构函数拷贝和移动构造函数定义了同类型的另一个对象初始化本对象时做什么拷贝和移动赋值运算符定义了一个对象赋予同类型的另一个对象时做什么析构函数定义了当此类型对象销毁时做什么以上这些操作称为拷贝控制操作如果我们不显示的定义这些操作,编译器会为我们定义,但编译器定义的版本的行为可能并非我们所想13.1 拷贝、赋值与销毁1.拷贝构造函数

2021-05-13 20:23:14 428

原创 《C++Primer》第十二章——动态内存

第十二章:动态内存静态内存区(全局区):保存局部 static 对象、类 static 数据成员以及定义在任何函数之外的变量,分配在静态内存的对象由编译器自动创建和销毁,static 对象在使用之前分配,在程序结束时销毁栈内存区:用来保存定义在函数内的非 static 对象,分配在栈内存的对象由编译器自动创建和销毁,对于栈对象,仅在其定义的程序块运行时才存在堆内存区:程序用堆来存储动态分配的对象——即那些在程序运行时分配的对象,动态对象的生存期由程序来控制,当动态对象不再使用时,我们的代码必须显式地销

2021-05-07 16:57:35 195

原创 《C++Primer》第十一章——关联容器

第十一章:关联容器顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的与之相对,关联容器中的元素是按关键字来保存和访问的关联容器支持高校的关键字查找和访问,两个主要的关联容器分别为 map 和 setmap:map 中的元素是一些关键字-值对,关键字起到索引的作用,值则表示与索引相关联的数据set:set 中只每个元素只包含一个关键字,set 支持高效的关键字查询操作标准库提供了8个关联容器,这8个容器间的不同体现在三个维度上:1)或者是一个 set,或者是一个 map2)或者要求不重复

2021-05-05 21:50:49 240

原创 《C++Primer》第十章——泛型算法

第十章:泛型算法泛型:这些算法是通用的,它们可以用于不同类型的容器和不同类型的元素算法:因为其实现了一些经典算法的公共接口,如排序和搜索10.1 概述1.大多数算法都定义在头文件 algorithm 中;标准库还在头文件 numeric 中定义了一组数值泛型算法2.一般情况下,算法不直接操作容器,而是遍历由两个指定的一个元素范围了进行操作,通常情况下,算法遍历范围,对其中每个元素进行一些处理int val = 42;//如果在vec中找到想要的元素,则返回结果指向它,否则返回结果为vec.ce

2021-05-05 15:08:00 179

原创 《C++Primer》第九章——顺序容器

第九章:顺序容器9.1 顺序容器概述1.顺序容器类型1)vector:可变大小数组支持快速随机访问,在尾部之外的位置插入或删除元素可能很慢2)deque:双端队列支持快速随机访问,在头尾位置插入/删除速度很快3)list:双向链表只支持双向顺序访问,在 list 中任何位置进行插入/删除操作速度都很快4)forword_list:单向链表只支持单向顺序访问,在链表任何位置进行插入/删除操作速度都很快新C++标准增加的类型,设计目标是达到与最好的手写的单向链表数据结构相当的性能,因此没

2021-05-04 10:25:33 214

原创 《C++Primer》第八章——IO库

第八章:IO库C++语言通过一族定义在标准库中的类型来处理IO,这些类型支持从设备读取数据、向设备写入数据的 IO 操作,设备可以是文件、控制台窗口等,还有一些类型允许内存 IO,即从 string 读取数据,向 string 写入数据8.1 IO类1.IO对象无拷贝或赋值ofstream out1, out2;out1 = out2; //错误,不能对流对象赋值ofstream print(ofstream); //错误,不能初始化ofstream参数out2 = print(out2)

2021-05-02 22:44:51 102

原创 《C++Primer》第七章——类

第七章:类类的基本思想是数据抽象和封装数据抽象是一种依赖于接口和实现分离的编程技术类的实现包括类的数据成员、负责接口实现的函数体以及定义类所需的各种私有函数7.1 定义抽象数据类型1.类的所有成员都必须在类的内部声明,但是成员函数体可以定义在类的内部也可以定义在类外2.this1)this形参是隐式定义的,因此任何自定义名为 this 的参数或变量的行为都是违法的2)可以在成员函数体内部使用 this3)this 总是指向“这个”对象,保存对象的地址,任何对类成员的直接访问都被看作 thi

2021-04-23 20:39:56 253

原创 《C++Primer》第六章——函数

第六章:函数6.1 函数基础1.典型的函数定义包括:返回类型、函数名字、由0个或多个形参组成的列表、函数体,一共四个部分2.函数是一个命名了的代码块,通过调用函数执行相应的代码,调用运算符的形式是一对圆括号,作用一个表达式,该表达式是函数或指向函数的指针,圆括号之内是一个用逗号隔开的实参列表,通过实参初始化函数的形参3.6.2 参数传递6.3 返回类型和 return 语句6.4 函数重载6.5 特殊用途语言特性6.6 函数匹配6.7 函数指针...

2021-04-22 13:27:40 212

原创 《C++Primer》第五章——语句

第五章:语句5.1 简单语句1.复合语句(块):是指用花括号括起来的语句和声明的序列,复合语句也被称作为块,一个块就是一个作用域,在块中引入的名字只能在块内部以及嵌套在块中的子块里访问,名字在有限的区域内可见,该区域从名字定义处开始,到名字所在的块的结尾为止。注:块不以分好作为结束5.2 语句作用域1.可以在5.3 条件语句5.4 迭代语句5.5 跳转语句5.6 try语句块和异常处理...

2021-04-20 10:56:40 148

原创 《C++Primer》第四章——表达式

第四章:表达式4.1 基础1.表达式:由一个或多个运算对象组成,对表达式求值将得到一个结果,字面值和变量是最简单的表达式,讲一个运算符和一个或多个运算对象组合起来可以生成较为复杂的表达式。2.左值和右值:当对象被用作左值的时候,用的是对象的身份(在内存中的位置);当一个对象被用作右值时,用的是对象的值(内容)使用关键字 decltype 时,左值和右值也有所不同,若表达式求值结果为左值,decltype 作用于该表达式得到一个引用类型。int *p;//解引用运算符生成左值,所以得到的结果为

2021-04-16 16:52:00 248

原创 《C++Primer》第三章——字符串、向量和数组

第三章:字符串、向量和数组3.1 命名空间的using声明1.using声明:通过简单的途径也能使用到命名空间中的成员,有了using声明就无需专门的前缀(形如命名空间::)也能使用所需的名字。格式:using namespace::name;using std::cin;//每个需要用到的名字都必须有自己的声明语句,且每句话都以分号结束using std::cout; using std::endl;注:位于头文件中的代码一般不应使用using声明,因为头文件的内容会拷贝到所有引用它的文件

2021-04-15 17:26:56 145

原创 《C++Primer》第二章——变量和基本类型

前言:上学期大致浏览过一遍《c++ primer》这本书,确实很厚,对c++有了一个大致的概念后,这学期打算将c++primer和effective c++结合者一起看,通过边看边通过写博客的形式进行总结归纳,以便以后更好的复习和理解。第二章:变量和基本类型2.1 基本内置类型1.切勿混用带符号类型和无符号类型,比如:当一个算数表达式中既有无符号数又有int值时,那个int值会被转换成无符号数2.字面值常量:只有内置类型有字面值,类类型不存在字面值1)整型和浮点型字面值:整型字面值具体数据类型由它

2021-04-14 21:52:50 231 1

原创 计算机网络第一章——概述

计算机网络第一章整理

2021-03-12 21:10:34 238

空空如也

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

TA关注的人

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