1、面试官自我介绍
2、自我介绍
3、介绍项目
4、介绍一下对称加密、非对称加密、数字签名
5、介绍一下堆区和栈区
6、new和malloc申请的是哪里的内存?如何减少内存碎片?(答了尽量按照页大小申请内存)
7、介绍一下TCP和UDP的区别
8、介绍一下4次挥手,如果有大量的closed_wait状态,你怎么排查?
9、进程和线程的区别
10、介绍一下你知道的进程间的通信方式
11、介绍一下僵尸进程和孤儿进程。孤儿进程和僵尸进程是正常的吗?
12、如何避免僵尸进程(fork完之后杀掉父进程,这时系统会管理子进程,就可以避免僵尸进程)
13、介绍一下C++的多态
14、在多重继承的条件下,孙子类的虚函数表是怎样的?它是将父类的虚表复制一份吗?
15、左值右值是什么?为什么传递函数参数的时候要传递右值引用?(可以直接传递临时变量)
16、为什么空类的大小是1?为什么不将空类大小定义成其他的数值?
17、空类里面有哪些变量和函数?
18、说说deque的底层实现原理和底层数据结构
19、介绍一下unique_ptr和shared_ptr
代码题:实现一个简易的shared_ptr
#bilibili##服务端##C++#
#后端##面经#