【已oc】百度 C++日常实习 1/2面
一面
八股拷打:
- c++部分
- 谈谈对c++多态的理解
- 多进程和多线程通信,选择其中一个展开说一下
- 谈谈你对右值引用的理解
- c++和c的不兼容性体现在哪些地方
- cmake工具,如何实现跨平台编译
- 给了有一个源文件,以及依赖的一个动态链接库,用cmake编译应该怎么写
- makefile有一个很重要的规则,指的是什么吗
- 谈谈对模板的理解
- python部分:
- 对字典类型的数据,怎么实现遍历
- list和tuple的区别
算法题:
- 将命令行参数解析成一个map,如: -a a1 a2 a3 -b b1 -c c1 c2
整体体验:
感觉一面面试官人很友好,有一两个问题自己不太懂,说了一点相关的东西,面试官也一直说没事,最后还说我的c++基础挺好的(面完我在想问什么没有问我简历和项目,后来才知道是 hr 当时没有把我的简历发过去,所以没问吧可能)
二面:
没有其他拷问,上来就是情景设计题
第一个问题,给一个目录,找到所有的子目录的路径,并按照从长到短的顺序排列,希望我用脚本语言实现
第二个问题,设计一个读写缓冲区
要求一: 是对同一个buffer进行读写操作
要求二:要有读写函数,分别由读写线程调用
要求三:缓冲区要是一个环形缓冲区
听完问题一,我知道这本质上就是一个目录的递归遍历问题,所以迅速给面试官输出了思路,表示这个用 C++ 实现需要用到一两个系统调用函数,自己记不清楚了,面试官说C++实现可能比较麻烦,建议我用脚本去写,python只知道os模块,虽然很简单,但最后还是棋差一招...
对问题二,一听感觉很熟悉,然然刷刷一顿输出,由于第一个问题花了太久时间,所以这一问只让我写了关键代码(5分钟写关键代码+5分钟输出)
总结:
幸运的是,最后还是拿到了实习offer,后续也面了其他中厂,感觉这次百度面试压力还是比较大,上午10:30一面,12点给结果说通过了,可以安排下午16:00二面,问的还是干货,尤其是二面,也说了不问leecode,要通过上面那种题目考察实习生的实际工程实践和模块分析能力 ^.^