淘宝 二面

  1. C++
  2. 内存泄漏怎么排查?(说了找挨个分配内存的地方看有没有可能未释放内存的风险,面试官问还有呢,不知道了。。)
  3. 内存泄漏的原因有哪些?
  4. c++定义的变量的初始化顺序是怎么确定的?(答初始化列表从左到右,确定看编译的机器码的顺序,也不确定。。)
  5. c++文件的静态变量和全局变量在从cpp源文件到可执行代码中的过程发生了什么?数据存在哪里?
  6. C++代码从源代码到生成可执行文件,这个过程中发生了什么?
  7. 为什么要有智能指针?智能指针有什么好处?(防止操作裸指针/方便/安全/防止内存泄漏)
  8. 智能指针有哪些问题?(答循环引用,面试官问还有吗,不知道了。。)
  9. 网络
  10. 网络应用层有哪些协议?(答HTTP/WebSocket)
  11. 介绍HTTP/WebSocket的区别
  12. HTTP1.1和HTTP2.0的区别?(头部压缩/二进制帧/并发传输/服务器主动推送资源)
  13. HTTP3.0有了解过吗?(没。。)
  14. UDP怎么实现可靠传输?(答QUIC,面试官提示QUIC就和HTTP3.0有关)
  15. 除了QUIC还有其他什么方式?(答传冗余包)
  16. 传冗余包是直接传一摸一样的复制包吗?这样岂不会加大网络拥塞程度(答还可能传三个包加一个冗余包,任意一个失效了还是可以恢复)那这是用的什么方式?底层是什么算法,知道吗?(不知道。。)
  17. WebRTC前向纠错FEC是用的什么冗余包方式?
  18. 网站的负载均衡是怎么做的?ngnix反向代理原理?
  19. 视频传输
  20. 你有看过ffmpeg的源码吗
  21. 描述一下如果让你写一个ffmpeg的话,这其中的过程会用到哪些接口?(完全不会。。按照视频编码解码流程瞎扯了一通)
  22. ffmpeg解析视频文件到HLS协议格式的过程中发生了什么?
  23. 什么是i帧/p帧/b帧?(不知道。。)
  24. 项目
  25. 你这个网站如何处理高并发问题的?(答io多路复用+线程池)
  26. 介绍你多线程的结构
  27. 为什么你的数据传输要用自定义的应用层协议?
  28. 什么是OCR/ASR?
  29. 余弦相似度是怎么计算的?出了余弦相似度还有哪些计算相似的方式?
  30. 你这个链路是线上跑的还是离线跑的?
  31. 其他
  32. 你有看过哪些开源项目的源码?(答nginx)
  33. 你是如何学习先进比较前沿的技术的?(答技术文档和学校论坛)介绍介绍(瞎说)
  34. 算法题
  35. 2n+1个数取出唯一的那个数(异或一遍)
  36. 2n+1+1个数取出唯一的那两个数(没想清楚。。我说的异或两遍)
  37. 舞会 关灯 白帽子 黑帽子 鼓掌 问题(答案是开关几次灯就有几个人戴黑帽子)
  38. 最大连续子数组
  39. 手写发布订阅模式

全程70min,活生生拷打

全部评论
补充 怎么用C实现C++的封装继承多态
点赞
送花
回复 分享
发布于 06-26 13:19 北京
补充:socket连接如何设置为长连接
点赞
送花
回复 分享
发布于 06-26 15:04 北京
神州信息
校招火热招聘中
官网直投
1. 非局部静态变量 - **静态存储持续时间的变量**(包括全局变量、静态变量、静态类成员等)的初始化顺序遵循它们定义的顺序,并且具体顺序还取决于它们所在的编译单元(即源文件)。 - 在同一个源文件中,全局变量按照它们的定义顺序进行初始化。 - 如果变量跨多个文件,它们的初始化顺序取决于文件被编译器处理的顺序,这可能导致所谓的“静态初始化顺序问题”。 2. 局部静态变量 - 局部静态变量(在函数或块内部定义的静态变量)在控制流第一次经过变量定义时初始化,这称为“懒惰初始化”或“按需初始化”。 - 这种方式确保了局部静态变量在第一次使用前被初始化,无论函数何时或从何处被调用。 3. 类成员变量 - **非静态成员变量**的初始化顺序严格按照它们在类中声明的顺序,不论它们在构造函数初始化列表中出现的顺序如何。 - **构造函数初始化列表**中提供的初始化器用于给这些成员变量提供初始值。 4. 继承顺序 - 如果类是从一个或多个类继承而来,基类的构造函数总是在派生类的任何成员初始化之前调用。 - 当有多个基类时,基类的构造调用顺序与它们在类定义中的声明顺序一致。
点赞
送花
回复 分享
发布于 06-26 16:43 北京
这难度。。确实难顶
点赞
送花
回复 分享
发布于 昨天 08:41 北京

相关推荐

3 18 评论
分享
牛客网
牛客企业服务