C++开发 面经
Last edited time
Sep 17, 2024 10:58 AM
AI summary
C++面试内容包括volatile关键字的作用、字节对齐的概念、红黑树的五个性质以及共享内存作为进程间最快的通信方式。提供了相关参考链接和资料以供深入学习。
Last edited by
Tags
面试内容节选
- voliate关键字作用
当两个线程都要用到某一个变量且该变量的值会被改变时,应该用volatile 声明,该关键字的作用是防止优化编译器把变量从内存装入CPU 寄存器中。
参考链接:
- 字节对齐
现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问,这就需要各种类型数据按照一定的规则
在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。
参考链接:
- 红黑树的五个性质
性质1:每个节点要么是黑色,要么是红色。
性质2:根节点是黑色。
性质3:每个叶子节点(NIL)是黑色。
性质4:每个红色节点的两个子节点一定都是黑色。 不能有两个红色节点相连。
性质5:任意一节点到每个叶子节点的路径都包含数量相同的黑结点。
从性质5又可以推出: 性质5.1:如果一个节点存在黑子节点,那么该结点肯定有两个子节点。不然走另一条路就会少一层黑色结点。
- 共享内存——进程间最快通信方式
参考资料
- CSDN参考
- 完整版
Loading...