
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
进程就是正在运行的程序,或者说是“程序的执行实例”。这个说法很直观,但不够精确。资源分配的基本单位:操作系统会把 CPU 时间、内存、I/O 设备等资源分配给进程。调度的基本单位:CPU 到底去运行哪一个进程,是按照进程为单位来切换的。用更现代一点的视角来看,进程可以拆成两部分:进程 = 内核为该进程维护的数据结构(PCB) + 进程自己的代码和数据这里的数据结构在 Linux 中就是,我们马上会

任何一台完整的计算机系统里,都包含一套最基本的程序集合,它叫做操作系统(Operating System,OS)。内核(Kernel):操作系统的核心,直接掌管硬件,负责进程管理、内存管理、文件系统、设备驱动、网络协议栈等关键模块。内核工作在最高特权级,可以执行任何指令。外壳程序与工具集:比如命令行解释器(shell)、图形界面、各种基础函数库等。它们不是内核,但为用户和程序员提供了与内核交互的便

今天的内容到这里就结束了,希望你能有所收获~干货整理到手抖,觉得有用的话,赏个三连回回血?

左值能取到地址、有名字、有持久状态的表达式。比如定义的变量、解引用的指针、数组的元素等等。左值可以出现在赋值号左边,也可以出现在右边。// p 是左值int b = 1;// b 是左值// c 是 const 左值(不能修改,但可以取地址)*p = 10;// *p 是左值s[0] = 'x';// s[0] 是左值// 都可以取地址左值的英文是 lvalue,传统上认为是 left value

让函数模板和类模板可以接受任意数量、任意类型的参数。以前我们只能为每种参数个数写一个重载,现在一个模板就能搞定。这里Args就是一个模板参数包,可以代表 0 个或多个模板类型参数;而args是函数参数包,对应着 0 个或多个函数参数。和普通模板参数不一样,参数包前面有省略号...。表示Args是一组类型的集合(可以没有,也可以有很多)。则是一组值的集合。今天的内容到这里就结束了,希望你能有所收获~

今天的内容到这里就结束了,希望你能有所收获~干货整理到手抖,觉得有用的话,赏个三连回回血?

今天的内容到这里就结束了,希望你能有所收获~干货整理到手抖,觉得有用的话,赏个三连回回血?

这体现了 C++ 模版的灵活性——只要提供一个能将 Key 转为整数的仿函数,任何类型都能作为哈希表的 Key。今天的内容到这里就结束了,希望你能有所收获~干货整理到手抖,觉得有用的话,赏个三连回回血?

继承是面向对象程序设计中实现代码复用的最重要的手段。它不是在函数层面复用(比如写一个通用函数到处调用),而是在类的设计层面进行复用。我们可以在保持原有类特性的基础上,通过继承来扩展新类,增加新的成员变量和成员函数。新产生的类叫做派生类,也叫子类;被继承的类叫做基类,也叫父类。这种叫法源于翻译习惯,我们后面会混用这些称呼。class 派生类名 : 继承方式 基类名 {// 派生类新增的成员 };

多态”这个词,字面上就是“多种形态现实中这种例子很多:同样是“买票”这件事,普通人买是全价,学生可能打五折,军人则享受优先服务。同样是“动物叫”,猫发出“喵喵”,狗发出“汪汪”。不同对象对同一个消息给出不同的响应,这就是多态。编译时多态(静态多态):在编译阶段就确定调用哪个函数。典型代表是函数重载和函数模板。你传一个int,编译器匹配f(int);传一个double,匹配f(double)。这个过








