影石面经
一面
1. 聊了聊实习。
2. C++ 里类型安全的转换有哪几种?
3. 聊聊智能指针?
4. 构造函数能是虚函数吗?
(还有别的 C++ 八股,记不清了,反正被拷打得很爽)
5. 场景题:怎么给无人机的飞行高度建模?
6. 口述一下链表重排的思路。
二面
1. 手撕一个生产者消费者模型。
2-7. 聊项目和实习。
8. 两个进程里各有一个指针,它们可能指向同一个物理地址吗?
9. 虚拟地址是怎么转成物理地址的?
10. 生产者消费者模型是怎么跑的?如果没有锁会怎么样?举个例子。
11. 函数传参有哪几种方式?有啥区别?
12. 聊聊 C++ 的多态?
13. `struct` 和 `class` 有啥区别?
14. 栈和队列有啥区别?
15. 二叉树用代码怎么表示?
16. 哈希表是种什么样的数据结构?
17. 如果要自己实现一个哈希表,该怎么做?
18. `int * p, q;` 这行代码是啥意思?