• 位域与联合体的内存布局

    位域(bit field)与联合体(union)都可以用来控制内存布局。本文主要阐述的内存可总结为:位域的内存布局是编译器决定的,而联合体的内存布局是由大小端决定的。

  • redis中的数据结构

    本文主要介绍了 redis 中的底层数据结构类型,并比较了操作这些数据时的时间复杂度。

  • redis基础

    本文是 tutorialspoint 提供的 redis 教程的学习笔记。

  • 深入探索C++内存模型(4)

    第四章是Function语意学,这一章主要介绍类相关函数的底层实现原理,就虚函数进行了展开讨论,通过实际代码的测试结果验证分析结论。对 inline 函数可能会出现的问题进行了分析,对 inline 函数的使用提出了指导意见。

  • 深入探索C++内存模型(3)

    第三章的标题是Data语意学,这一章主要的研究对象是类的成员变量相关的操作原理,静态成员变量与非静态成员变量,单一继承、多重继承、虚继承对成员变量内存分布和存取性能的影响。

  • 在Linux终端中进行递归搜索

    有时候我们需要对某个目录中的所有文件进行递归式搜索。递归搜索,即搜索该目录中的所有文件和其二级目录下的所有文件,依此类推。本文给出了两种实现思路,分别使用 grepfind 命令。

  • 初识docker

    这篇文章是 docker-curriculum.com 的学习笔记,包含 docker 的基础概念和入门用法。通过阅读该教程,我对 docker 以及容器化的软件开发、分发和部署有了初步的认识。

  • 分支预测技术

    分支预测技术是CPU体系结构(architecture)中的知识点,用于提高指令(instruction)的执行效率。本篇博文是对网络上相关信息的总结,以备后续查阅使用。

  • 深入探索C++内存模型(2)

    构造函语意学是本书的第二章,这一章节主要针对构造函数在不同情况的底层实现细节进行的全面的讨论。阐述了在类对象(class object)的构造期间,编译器进行的额外操作的原理。针对默认构造函数(default constructor)和拷贝构造函数(copy constructor)分别展开了细致的讨论,引出了编译器 NRV 优化的概念,揭示了成员初始化列表的作用机理。

  • 深入探索C++内存模型(1)

    最近花时间读了一下《深入探索C++内存模型》,这本带我了解到了更底层的C++知识。

    这本书从C++语言各种特性的实现机制上进行细致剖析,进而总结出对软件开发具有指导意义的经验和结论。这本书的目标群体是具有开发经验的中高级开发人员,其内容的专业性是不容质疑的。

    从我的阅读感受上讲,它相对比那些一般的技术文档要耗时耗力。全书共三百多页,粗略地估算了一下,我却用了一个月的空余时间才读完。我会将读书笔记整理成博文,这样能够加深记忆,也方便以后查阅。

  • C++(Qt)和Python混合编程的一些经验之谈

    在Launchy的开发中,我使用了Python作为Qt程序的插件开发语言,最近有朋友问我Qt和Python结合使用的一些细节。结合我之前踩坑的经历,C++(Qt)和Python的混合编程可以从几个方面进行考虑。