05 2020 档案
摘要:关于匿名对象与临时对象,这个概念不是绝对的,概念的区分往往十分拗口难记。要根据作用域,生存时间和用法来来决定;工作多年这些拗口的概念我从来没有真的记住过,也没有一个博客讲清楚他们的区别。这里我们参考《Effective C++》中得称谓,称之为局部对象。但是局部也是有范围得。下面论证。 1 无名则无
阅读全文
摘要:多态: C++的多态是通过一张虚函数表(Virtual Table)来实现的,简称为 V-Table。在这个表中,主要是一个类的虚函数的地址表,这张表解决了继承、覆写的问题,保证其真实反应实际的函数。这样,在有虚函数的类的实例中这个表被分配在了这个实例的内存中,所以,当我们用父类的指针来操作一个子类
阅读全文
摘要:以X86处理器为例,进程被创建时有4G的寻址空间,至于为什么是4G,这个又和CPU地址总线有关。当我们开启计算机时,明明只有4G物理内存的,为什么开启的进程数量有几百个。进程4G的进程关系一定时和物理内存保持了某种映射关系。而不是独占。 1、用户编制程序时使用的地址称为虚地址或逻辑地址,其对应的存储
阅读全文
摘要:———————————————综述与目录—————————————— 讨论这个问题之前我们先明确类的结构,一个类的大概组成,下面的很多分类名词都是我个人杜撰,为的就是让读者看懂能够区分,下面分别分类: 目录 空类 不含任何成员变量,也不继承某个基类。 结构类 像C语言中结构体一样,要么只包含基本数据
阅读全文
摘要:该文章转自:https://www.jianshu.com/p/81233f3c2c14 系统的性能很大程度上依赖于cpu 硬件架构的支持。这里记录一下cpu 常见的三大架构的区别 smp SMP (Symmetric Multiprocessing) , 对称多处理器. 顾名思义, 在SMP中所有
阅读全文
摘要:本篇随笔讨论一个比较冷门的知识,继承结构中内存对齐的问题,如今内存越来越大也越来越便宜,大部分人都已经不再关注内存对齐的问题了。但是作为一个有追求的技术人员,实现功能永远都是最基本的要求,把代码优化到自己想要的样子才能从中找到真正的愉悦感。这便是我们追求细节的意义。 声明:以下例子,以x86_64
阅读全文