c++实习面经

毫末智行

一面 3.16

1.RPC 和GRPC相比优势

2.为什么选择Zookeeper

3.function和函数指针的区别

4.线程和进程区别

5.介绍几种自己比较熟的容器

算法题:任务调度和斐波那契数列

二面

主要是项目

柠檬微趣

一面 3.22

项目

  • buffer缓冲区
  • 线程池怎么实现得(手写线程池)
  • 单例模式
  • 定时器得实现

c++

  • std::move
  • 线程和进程那个切换快,虚拟空间由什么不同
  • 虚拟空间和物理空间区别
  • 访问不存在得虚拟空间会发生什么
  • 介绍排序算法时间复杂度、空间复杂度、稳定性(建堆自顶向下,自下向上得时间复杂度)

二面 3.27

  • tcp和udp的区别
  • udp传输数据的过程
  • 计算B+树层高
  • 大文件寻找中位数
  • 两数之和

WIND

一面 3.22

  • sizeof类的大小(类中只含有一个静态变量)
  • 多态
  • string s1 = "abc", string s2 = s1,区别,如果自己实现怎么实现s1,直接开辟内存然后初始化
  • 介绍Reactor,Reactor具体是什么

淘天

一面(电话面) 4.8

  • 智能指针,解释什么时循环引用
  • TCP、UDP
  • 微信聊天选哪个、视频会议选择哪个、下载选什么协议
  • TCP编程步骤
  • UDP编程步骤
  • TCP 和UDP的区别
  • 怎么使用udp实现可靠传输
  • 在网页输入网址的通信过程
  • socket参数都有哪些
  • 线程多线程中join和detach区别
  • 香农定理和奈奎斯特定理

手撕:

  • 二叉树的建立
  • 层序遍历二叉树
  • 两个线程分别读取文件text1, text2第一行然后读取完后再主线程输出成功(join())
  • 两个线程分别读取文件text1, text2第一行,主线程输出成功(detach())

Momenta

一面 4.9

  • 指针引用区别
  • 左值和右值
  • 智能指针
  • c语言struct和c++struct区别
  • 重载和重写
  • 介绍项目
  • 为啥做rpc

二面 4.10

  • 怎么比较float
  • 为什么要这样比较
  • 内存对齐,为什么进行内存对齐
  • 口撕单例模式
  • 手撕 判断一个地址是不是IPV4

腾讯

天美 一面 4.10

  • TCP和UDP,王者荣耀用到的协议
  • c++多态
  • 虚函数,虚函数表
  • 虚析构函数
  • 构造函数为什么不能是虚函数
  • 虚函数表属于类还是属于对象
  • 模板编程,放在哪个文件中(.h)
  • 多路IO复用
  • new和malloc区别
  • rpc框架的实现, 日志怎么实现的,知不知道无锁队列
  • muduo的定时器怎么实现的,线程池怎么工作的

ACM模式

  • 反转指定范围链表
  • 搜素二维矩阵

天美 二面 4.11

  • 项目的相关
  • linux查看cpu
  • b+树
  • zookeeper崩溃咋办
  • mysql主从同步
  • 分布式一致性
  • new和malloc区别
  • 进程之间的通信方式
  • select、poll、epoll

无手撕

天美 三面 4.16

  • 面向对象、面向过程
  • 查看端口状态
  • 怎么判断链表有环
  • new 和 malloc的区别
  • 常见的排序算法
  • 内存泄漏
  • 进程之间的通信方式
  • 怎么调试,然后怎么快速定位死循环
  • socket使用Tcp怎么增加系统的吞吐量
全部评论
老哥做的什么项目呀
点赞 回复 分享
发布于 05-03 18:10 广西
真好 这么多面试机会 我投了不知道多少基本上都不给面
点赞 回复 分享
发布于 05-10 14:29 湖南
老哥网络库写的那个呀,我也准备写一下rpc框架
点赞 回复 分享
发布于 05-22 15:46 湖北
请问一下毫末智行是什么岗呀
点赞 回复 分享
发布于 06-06 12:37 江苏
佬,可以分享下网络库简历的写法吗,学习下
点赞 回复 分享
发布于 06-07 17:09 四川
王者荣耀用到的协议是什么?崩
点赞 回复 分享
发布于 06-25 22:13 安徽
老哥做的哪个rpc
点赞 回复 分享
发布于 06-28 12:51 江苏
老哥C++容易找到实习和工作吗,我也想转C++了。我看一年前你也要同样的问题哈哈哈
点赞 回复 分享
发布于 08-08 17:18 黑龙江

相关推荐

10-29 11:50
东北大学 C++
分布式缓存,你的分布式key是怎么分桶的?分桶规则是什么?节点的增减会不会影响你的数据分布?有没有主节点?没有主节点来管理整个数据的一个分布规则,如果有一个节点挂了,客户端怎么感知的?假设正在请求中,down了一个节点,比如原来5个down之后变成4个,那这个时候你请求的有部分数据,它的数据分布就变了,你的客户端怎么知道这个事情?怎么会路由到其他节点上去呢?你这个数据可能正在迁移,你数据正在迁移,假设你的第五个节点宕机了,那么你的第五个节点的数据从哪里取出来?你这个节点宕机了,其他节点怎么拿到他这个宕机的数据?相当于你存的节点的数据在数据库都有?缓存有副本吗?平时都建议把C++模板类的实现,放到头文件中,基于什么考虑?C++一个虚函数可以定义成模板函数吗?如果我在一个头文件中定义一个函数,这里会有什么问题吗?一个类的大小有什么有关?如果一个类本身有一个虚函数,再加一个虚函数它的大小怎么变化?unordered_map和map的区别有unordered_map查找时间复杂度是O(1),既然有基于哈希表的map,为什么还要有基于红黑树的map?解决哈希冲突的一些方法C++三种智能指针unique_ptr怎么做到的单独拥有一块内存,而不是和别人共享一块内存?手撕:字符串相乘,没撕出来,挂
腾讯一面1582人在聊 查看17道真题和解析
点赞 评论 收藏
分享
22 112 评论
分享
牛客网
牛客企业服务