摘要:
move 语义 左值与右值 在C中可以取得内存地址的、有名字的变量就是左值,左值在使用时可以放在等号左侧;右值则是指不能取得内存地址的、没有名字的变量,只能在等号的右侧使用。右值直观上就是临时变量,如执行 a = b + c 时,等号右侧优先计算,加和结果会被保存在临时变量中,这个临时变量就是右值。 阅读全文
摘要:
字符串 字符串也是标准库中提供的,可以参考 String 。 字符串使用的细节 字符串提供了 += 可以连接字符串和字符,但是 + 只能连接两个字符串。 可以使用类似于 C 字符串的形式,使用指针访问,&str[0]。 字符串的成员函数 earse 与其它容器的不同,只需要提供下标值就可以。 正则表 阅读全文
摘要:
迭代器 迭代器用于遍历容器。迭代器比较重要的一点是 end() 对应的迭代器并不指向结尾元素,而是结尾元素的后面一个,是无法解引用的。 虽然都是通过相同的接口获得迭代器,但是不同的容器返回的迭代器是有差别的。 前向迭代器:无序容器返回的迭代器类型, 只能使用 ++ 前进。 双向迭代器:关联容器返回的 阅读全文
摘要:
容器 容器可以分为三类:序列式容器、关联容器、无序容器,此外还有一些容器适配器。 序列容器 array 与 vector :array 与C中的数组类似,是一种大小固定的存储连续的容器;vector 也是存储连续的,但它的长度可以动态调整。相对于数组类型,这两种容器更为安全。由于 array 与 v 阅读全文
摘要:
const 常量 使用宏 define 定义常量是常见的行为,在C++中还可以使用 const 关键字来实现常量的定义。 const double PI = 3.1415926535; 在类中使用常量,为了避免每个实例都产生一个常量,可以使用 static const double PI = 3.1 阅读全文
摘要:
静态类型与动态类型 编程语言的类型系统有静态类型与动态类型之分。静态类型的编程语言在编译期间会进行类型检查,如果编译期间发现类型不匹配或类型未知,编译器就会报出对应的语法错误;动态类型的编程语言在运行期间才会确定常量变量类型,因而更加灵活。 静态类型与动态类型各有优势。静态类型的编程语言要求编程人员 阅读全文
摘要:
目录如下: 网络笔记 P01:概述与物理层 网络笔记 P02:数据链路层 网络笔记 P03:网络层 网络笔记 P04:传输层 网络笔记 P05:应用层 阅读全文
摘要:
目录如下: 操作系统笔记 P01:概述 操作系统笔记 P02:进程管理 操作系统笔记 P03:内存管理 操作系统笔记 P04:文件管理 操作系统笔记 P05:I/O管理 阅读全文
摘要:
目录如下: 计组笔记 P01:概述 计组笔记 P02:数据表示与运算 计组笔记 P03:中央处理器 计组笔记 P04:存储器 计组笔记 P05:总线 计组笔记 P06:输入输出系统 计组笔记 P07:MIPS 阅读全文
摘要:
数学笔记中公式较多,导致无法渲染在单篇文章中,被我按照章节放入了多篇文章中,目录如下: 概率笔记 P01:随机事件与概率 概率笔记 P02:随机变量及其分布 概率笔记 P03:多维随机变量及其分布 概率笔记 P04:随机变量的数字特征 概率笔记 P05:大数定律和中心极限定理 概率笔记 P06:数理 阅读全文