背景:
24 届,二本,ICPC 铜,三个项目:高性能 web 服务器(C++)、分布式数据库(MIT 6.824)和基于 C++17 标准的 json 解析器。
面试时间:4.4
杂
- 为什么对 C++ 感兴趣
- 看过哪些 C++ 的书籍
- 是否有过高频交易相关的经验
- 你对高频交易的理解
- 交易系统
- url1:tcp,交易;url2:udp,接收数据。url2 一次性返回多条买卖数据(缓冲区),一次性返回多条买卖数据的影响(丢包)
- 项目(MIT 6.824)介绍,在这个项目学到了什么
C++
- 项目(C++17 json 解析器)
- optional
- variant
- C++17 新特性
- 模板元编程
- 一般使用模板元编程干什么
- 静态多态和动态多态
- 偏特化和全特化
- C++ 实现单例模式
- shared_ptr 和 unique_ptr 谁更高效
- 纯虚函数
- 继承时如果不重写纯虚函数会发生什么
- 虚函数性能损失,如何设计基类和派生类在继承的时候解决这种损失(CRTP)
- 股票 ID 与策略实例一一对应,用什么数据结构
- map、unordered_map 的底层实现
- unordered_map 的缺点
- unordered_map 是 CPU 缓存友好的吗
- vector 内存是连续的吗
- vector 扩容
- placement new
- 介绍一下拷贝构造函数与移动函数
- 左值和右值
- C++ 处理异常的关键字
- segment fault 怎么处理
- segment fault 的常见原因
操作系统
Linux 命令
- 创建文件夹
- 删除文件夹
- 新建文件
- 查看 G++ 版本
- 查看 G++ 绝对路径
Git 命令
- 查看本地全部分支
- 切换分支
- 查看文件哪些被修改了
- 提交暂存区
- 提交变动
第一次面试,很多东西一紧张就答不上来了,真的很可惜
现在(4.6)还没收到回复,估计是 G 了
#C++#
#面经##量化##2024暑期#
#我的实习求职记录#