LaTeX数学公式 x2∗121⋅θα∫0xbd(正)b∑i=1100x⋯x⏞i个∏jj12limx→∞(k=1,…,n)0.1x/a⃗‾AB←βd→∣[(1⋯5⋮⋱⋮5⋯7)]∣xˉ+x^−x~ mod 1x_{2*1}^{21\cdot\sqrt{\theta\alpha}}\int_0^xb\mathrm{d(正)}b\sum_{i=1}^{100}\overbrace{x\cdots x}^{i个}\prod 2024-06-30
LaTex \ 换行 \newline 换行 两个Enter 换行 一个Enter 空格 多个空格 一个空格 \usepackage[option]{packname} 导入外部包 \newpage或\clearpage 换页 \documentclass{type} 指定整个文件的风格,用在开头,artical,report,book等等 \chapter[shor 2024-06-30
modern c++ 默认实参 对于某一个函数,其默认参数可以通过多次声明来一起组成。只要保证当前声明的默认实参后的形参在该作用域之前的地方已经声明过默认实参即可,而总体的结果就是这些合并起来。 12void C(int a,int b=1);void C(int a=1,int b); 但是,默认实参不能被重定义,即便默认实参的值一致。 对于类模板的成员函数,所有默认实参必须在成员函数的初始声明处提供。 如果不是 2024-06-30
vim hjkl:←↓↑→ w:向后移动到单词头,将标点符号视为分割,不包括第一个字符 e:像后移动到单词尾,不将标点符号视为分割,包括最后一个字符 b:向前移动到单词头,将标点符号视为分割 B:向前移动到单词头,不将标点符号视为分割 $:向后移动到行尾,包括最后一个字符 x:删除当前所在字符 X:删除当前所在前一个字符 i:当前位置下开始insert a:当前后面一个位置开始insert A:从当前行行 2024-06-30
B-树 B树是一种类似于红黑树的树,但并非是二叉树,是多叉树,假设一个节点有n个孩子,那么,该节点将存储n-1个关键字,这些关键字就是孩子们之间的分割线,通过比对这n-1个关键字,即可知道数据是在哪个孩子里面。 由于机械硬盘的随机读取速度非常慢,故希望能在一次读取中读取多个数据,B树就可以优化读取的这一部分,即IO部分。另外,为了保证少读取几次,要使得B树的高度尽可能小。 在电脑中,主存的大小一般小于磁盘 2024-06-30
Effective c++ 模板推导 对于传数组,由于c中数组和指针是等价的,因此,数组通过值传递的时候被视为一个指针,模板推导出来也是一个指针。然而,当作为引用传递的时候,其就不和指针等价了,可以推导出其类型和大小。 但实际上,这两个传进去的东西用起来是一样的。都是函数()。 auto 1234template<typename T>void f(ParamType param);ParamTypeOfAu 2024-06-30
HeadFirst design Pattern 面向接口编程,上对下要有抽象中间层,上面自己也需要抽象顶层。 策略模式 继承会导致在添加新的行为的时候不够灵活,要们需要在每个子类中实现,如果在基类中实现那么即便是不需要这个行为的子类也会继承这个行为。 此时我们可以使用策略模式。 实际上就是一种将继承改为组合的例子。 将拥有行为者和行为分开,总共包括四个类,通过让行为者使用不同的行为就达成了行为改变的结果。 抽象拥有者:拥有着抽象行为,和使用抽 2024-06-30
c++代码规范 文件后缀名 实现:.cc 声明:.h(模板声明和定义都写在.h里) 内联:.inc(不允许有-inl.h,也就是声明和定义写在一起)或者用于插入文本 实现和声明一一对应,除非如单元测试和只包含main函数的可以只有.cc。 目录 头文件 一个.h文件应该自给自足,其自身就应该include所有其他依赖头文件,并不要求定义任何特别symbols。 除了为模板提供实例化的模板函数需要定义在实例化改模板 2024-06-30