lhish's blog
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于

problems

C2039和C3861这两个错误同时出现在标准库上 因为自己的工程里有一个math.h文件 重载解引用运算符识别不出来?
2025-08-16

操作系统

操作系统引论 进程的描述与控制 处理机调度与死锁 操作系统接口 存储器管理 虚拟存储器 输入输出系统 文件管理 磁盘存储器的管理
2025-08-16

编译

一个编译程序的重要性体现在它使得多数计算机用户不必考虑与机器有关的烦琐细 节,使程序员和程序设计专家独立于机器 词法分析程序的生成系统 LEX ,语法分析程序的生成系统 YACC 词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码 词法分析:这个阶段的任务是从左到右一个字符一个字符地读入源程序,对构成源程序的字符目标程序 流进行扫描和分解,从而识别出一个个单词。 语法分析:在词法分析的
2025-08-16

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
2025-08-16

LaTex

\ 换行 \newline 换行 两个Enter 换行 一个Enter 空格 多个空格 一个空格 \usepackage[option]{packname} 导入外部包 \newpage或\clearpage 换页 \documentclass{type} 指定整个文件的风格,用在开头,artical,report,book等等 \chapter[shor
2025-08-16

modern c++

默认实参 对于某一个函数,其默认参数可以通过多次声明来一起组成。只要保证当前声明的默认实参后的形参在该作用域之前的地方已经声明过默认实参即可,而总体的结果就是这些合并起来。 12void C(int a,int b=1);void C(int a=1,int b); 但是,默认实参不能被重定义,即便默认实参的值一致。 对于类模板的成员函数,所有默认实参必须在成员函数的初始声明处提供。 如果不是
2025-08-16

more c++

map variant_constexpr 多维数组如果真的用多维数组,因为有多个指针,所以更慢,而如果就用一维数组模拟存储,就不会有这种问题 为什么要用begin()或者end()这个泛型,一部分是为了匹配c的老式数组 PImpl 但实际上,输出流 cout 默认的设置就是“行刷新缓存”,也就是说,检测到 '\n' 时,就会自动刷新一次,根本不需要我们手动刷新! 如果还用 endl 的话
2025-08-16

mit_os

lesson1 exec的时候虽然会把进程映像替换,但是会保留FD,并且会保留FD中的偏移量。 但即便保留了FD,也可以在exec的时候更改FD,进行重定向,并且不会影响主进程。 open是可以open文件夹的,并且也可以读出来的就是这个目录下的所有文件名,需要按照一定格式去一个一个读出来。 exit是用来结束进程的,一般子进程结束后就要exit一下,虽然不exit也问题不大,感觉类似return
2025-08-16

HeadFirst design Pattern

面向接口编程,上对下要有抽象中间层,上面自己也需要抽象顶层。 策略模式 继承会导致在添加新的行为的时候不够灵活,要们需要在每个子类中实现,如果在基类中实现那么即便是不需要这个行为的子类也会继承这个行为。 此时我们可以使用策略模式。 实际上就是一种将继承改为组合的例子。 将拥有行为者和行为分开,总共包括四个类,通过让行为者使用不同的行为就达成了行为改变的结果。 抽象拥有者:拥有着抽象行为,和使用抽
2025-08-16

git

保存的是基于上面一个节点变更的内容 每一个节点都是一个版本。 git commit:在原本的节点下添加一个新的节点,也就是更新版本,于HEAD所在的位置 git branch name: 新建一个分支,于HEAD所在的位置 git checkout name: 切换当前所在分支,但最好使用git switch name来切换 git checkout -b name: 新建分支并切换到这个分支上
2025-08-16
1234

搜索

Hexo Fluid
总访问量 次 总访客数 人