字节后端开发提前批面经

背景,本硕985,没论文,非互联网公司实习*1,项目*1,国内某厂竞赛Top1%。
时间有点久,最近面试密集可能有记漏的。

一面
撕项目
mmap对什么做了映射
为什么mmap比fwrite快(其实不一定)
c++static关键字
多态讲一下
析构函数为什么要用虚函数
虚表指针存在哪里
为什么存在开头
为什么不存在父类的末尾
智能指针讲一下
如何优化智能指针的访存
cow了解吗
string慢在哪里
vector,unordered_map,deque底层实现
c++内存分布
堆区快还是栈区快
栈区有什么限制
撕代码,判断满二叉树


二面
手写shared_ptr
手写mpmc队列(这个不太会,后面了解了下应该是要实现个无锁队列)

三面
撕项目
业务场景问题,优先队列的优化(比赛恰好做过)

四面
撕项目
撕代码,跳楼梯*3

时间:一二面一起的,其余每面隔一两天左右。


#字节跳动##C++工程师##面经##校招#
全部评论
果然是大佬
点赞 回复 分享
发布于 2020-08-11 00:40
大佬SSSP预订
点赞 回复 分享
发布于 2020-08-11 07:24
虚表指针 为什么不存在父类的末尾, 这样回答对吗 楼主 ? 子类需要在构造函数中初始化虚表指针,使得虚表指针指向自己的虚表,调用自己的虚函数。不存在在父类中,是因为子类的虚函数要覆盖基类的虚函数,所以要有一个指针找到覆盖后的虚函数。 另外虚表是在 代码段 编译的时候就产生了,但是虚表指针需要在子类构造函数中进行初始化,如果要是在父类中那么 在子类对象生成的过程中,子类的虚表指针并不能指向自己的虚函数,
点赞 回复 分享
发布于 2020-08-11 09:21
大佬虚表指针开头和末尾求解答啊
点赞 回复 分享
发布于 2020-08-11 11:16
大佬是一二面面完,直接通知有三面的嘛
点赞 回复 分享
发布于 2020-08-12 22:08

相关推荐

评论
5
41
分享
牛客网
牛客企业服务