阿里钉钉客户端C++面经
背景:本硕9 非科班 项目是webserver和json解析器
一面(70min)3.21
1.自我介绍
2.select epoll poll的区别
3.哈希map的特性(和map的区别
4.出现死锁的条件
5.只有一个互斥量和一个线程的时候会发生死锁吗(这个有点没太理解,说了一下迭代锁和非迭代锁)
6.线程和进程的区别。
7.线程管理的范围(线程资源的管理范围)
8.extern的作用,extern “C”的作用
9.静态库和动态库的区别
10.动态库相比静态库的优劣
11.http与https的区别
12.https在什么情况下不安全(这里提到了中间人攻击,当时回答的不是很了解)
13.tcp和udp的区别
14.tcp和udp的哪一个会是未来更大的一个方向。
15.dns协议
16.c++右值引用,完美转发
17.linux和win上编程的差异
18.对面向对象的编程和面向接口的编程的理解
19.解释一下中断机制
20.询问了一下json解析器的实现效果
21.mysql中innodb的最大的特性
22.上学期间最大的收获。
23.反问。
一面由于面试官有事情,手撕代码另外约了一天 。
手撕代码考了两个
1. 手写memcpy,要考虑内存重叠的情况
2. Lc 原题,找重复出现的数,没有要求时间复杂度,可以用排序秒
一面(70min)3.21
1.自我介绍
2.select epoll poll的区别
3.哈希map的特性(和map的区别
4.出现死锁的条件
5.只有一个互斥量和一个线程的时候会发生死锁吗(这个有点没太理解,说了一下迭代锁和非迭代锁)
6.线程和进程的区别。
7.线程管理的范围(线程资源的管理范围)
8.extern的作用,extern “C”的作用
9.静态库和动态库的区别
10.动态库相比静态库的优劣
11.http与https的区别
12.https在什么情况下不安全(这里提到了中间人攻击,当时回答的不是很了解)
13.tcp和udp的区别
14.tcp和udp的哪一个会是未来更大的一个方向。
15.dns协议
16.c++右值引用,完美转发
17.linux和win上编程的差异
18.对面向对象的编程和面向接口的编程的理解
19.解释一下中断机制
20.询问了一下json解析器的实现效果
21.mysql中innodb的最大的特性
22.上学期间最大的收获。
23.反问。
一面由于面试官有事情,手撕代码另外约了一天 。
手撕代码考了两个
1. 手写memcpy,要考虑内存重叠的情况
2. Lc 原题,找重复出现的数,没有要求时间复杂度,可以用排序秒
全部评论
二面(60min)3.28
1. 部门业务介绍
2. 自我介绍
3. 让介绍自己的项目,并且说一下几个项目的最终实现效果。(这里问了一下项目的压测怎么实现的)
4. 讲讲 json解析器为什么用variant
5. 一个类没有定义任何方法,编译器会生成那些方法
6. 讲一讲虚指针如何实现
7. Stl中map的数据结构
8. Map中key的特点,我们怎么去构造这样一个key(这点没搞明白)
9. Remove与erase的区别
10. 动态链接和静态链接的区别
11. 讲讲类特化
12. Hashmap的实现原理
13. 二分查找算法
14. 优先队列是怎么实现的
15. 进程间的同通信方式
16. 讲讲http中那有些请求方法
17. 讲讲http中的状态码
18. 有接触过qt的开发吗
19. 开放性问题:扫码登录的实现过程。
20. 个人的一些规划
21. 手撕:
Eazy题,要求15分钟内做出来:一共有100瓶啤酒,3个空瓶可以换1瓶啤酒,7个瓶盖可以换一瓶啤酒,一共可以喝多少瓶啤酒?
这个当时直接模拟了,没能想到更简单的方法。
Hr面(30min)3.30
1.自我介绍
2.为什么选择钉钉音视频客户端
3.大学为什么会选择这个专业
4.专业课有哪些
5.大学成绩怎么样
6.大学中你觉得比较有挑战的项目
7.平常喜欢关注什么技术
8.个人的规划
9.有没有女朋友之类的
10.平时有练习代码吗
11.研究生工作重不重
12.研究生导师对你的评价
13.反问阶段。
4.6 邮箱收到意向书
你就是我的神😍
感谢分享
感谢楼主
楼主这是实习还是春招
相关推荐