当前位置: 首页 > 面试经验 >

「百度实习」C++后端开发面经

优质
小牛编辑
109浏览
2023-03-28

「百度实习」C++后端开发面经

一面

没有自我介绍

看你写了很多 Linux C++,你 C 和 CPP 区别是什么

指针和引用的区别

线程间的同步方式

进程间的通信方式

请介绍五大 IO 模型

数据库了解多少

什么情况下建立索引

能不能讲具体点,什么情况不建立索引

MySQL 存储引擎有哪些

为什么做一个 RPC 框架,是 demo 吗

看你用了 protobuf,它和 JSON 的区别是什么,为什么使用它

RPC 协议和 HTTP 协议的区别和特点

你用到了 zookeeper,它在你的项目中起到什么作用

字节跳动青训营是做什么的

看你写了熟悉的排序算法,你写个归并吧(后来只讲述了思路)

那你写个快排吧(有个符号写反了,稍微 debug 了一下)

你有什么想问的

技术栈是什么(go 语言,gin,gorm,grpc 这类的)

多快出结果(很快)

下午三点面的,六点多在地铁上收到了二面通知。

二面

面试官感觉比较严肃,介绍面试流程

自我介绍

说一下 C++ 内存分布

你提到了 .stack,这只是编译器搞得内存吗,你不能在代码里处理吗?

如果在 .stack 中定义某个很大的对象,这可以吗

你说到了栈溢出,那什么情况下会栈溢出,你了解吗

你有了解在哪个数值上会溢出吗,比如你的栈设置了 1K,2K,1M,2M,这样

C++ 重载和重写的区别

你提到了虚函数,可以讲一下虚函数的实现吗

C++ 的友元有用过吗

为什么要这么做,C++ 为什么要有这个,这个不是破坏了封装吗

我看你有说了解 C++ 11 的智能指针,有哪几个,具体实现了解吗

你提到了两个概念,一个是 shared_ptr,一个是 weak_ptr,它们的区别和使用场景

我们一般不会发生循环引用,weak_ptr 那还有什么使用场景

TCP/UDP,HTTP/HTTPS 都很熟悉吧,讲一下 TCP 三次握手

为什么要三次握手,不能两次吗

这个是官方给的,你自己有思考过吗(保证双方互相得知了收发信息的能力,维护了序列号)

TIME_WAIT 状态是做什么用的

如果你在 TIME_WAIT 状态下 read 函数会发生什么

read 函数的返回值你了解吗

写个程序吧,中等难度可以吧,不使用 if else switch 等条件判断语句,判断 a b 谁比较大

那就写个简单的,判断闰年

你有要介绍的项目吗

你的 epoll_wait 是怎么处理的,time_out 值等

那你的项目的模型是什么

线程池的实现

网络问题再问一个,网络大小端知道吗

我这边没什么问题了,你有什么问题吗

晚上接到了来电,第二天三面

三面

三面好像忘记发我邮件了,我直接一个电话打过去,然后就是电话问问题了。大致就是实习够用,但是考虑我大概率不会留在这里,就把我转到北京的部门看看也没有匹配的。

 类似资料: