写面经攒人品,面试官很和蔼,需要提示的地方也会引导,面试体验非常不戳,约了16号线下二面。
忘记开录音了,靠记忆能想一点是一点,有不全,基本就是项目引申出来的八股,全程半个小时。
1、介绍项目,聊项目。
2、问实习。
3、线程池原理。
4、epoll实现、select实现,两者区别。
5、单核多线程的底层实现。
6、为什么多线程可以提高性能。
7、多态底层,虚函数实现方法。
8、使用到多态的设计模式。
9、虚函数表是针对类还是针对对象的。
10、哪些函数可以是虚函数,哪些不能。
11、内联函数为什么不能是虚函数。
12、虚函数能是内联函数吗。
13、移动拷贝构造原理,解决什么问题。
14、C++学习过程中的难点。
15、C++新特性、智能指针说一下,shared_ptr底层实现,什么情况下计数器会加,什么时候会减。
16、空类大小,为什么,如果加一个虚函数。
17、有限状态机说一下。
18、项目中哪些地方用到了C++三大特性,如何优化。
19、常用的排序算法。
20、哪些排序算法是稳定的,哪些是不稳定的。
21、插入排序的时间、空间复杂度。
22、线程间通讯方式有哪些,哪个最快?
23、CPU对线程的调度方法。
24、成员初始化列表和构造函数哪个快。
25、STL六大组件说一下,用了哪些。
26、子类构造和析构顺序。
27、虚函数表的变化过程。
28、Linux文件系统。
29、Linux的调试方法,GDB打断点指令。
30、贪心算法说一下思路。
31、贪心算法和动态规划的区别。
32、反问。
暂时就记得这么多了,面试官说最近收到的简历太多了,不知道hr的工作安排,所以无法确定回复的时间,隔了一天问的hr说已通过,13号发消息通知16号线下二面!