← 返回目录

面经3-C++-地平线

第 61 / 152 卷日期:

面经3-C++-地平线

作者:xyFei

地平线一面(1h)

  1. 自我介绍
  2. 项目1 自己详细介绍
  3. 项目2(webServer)问线程池实现怎么发送fd Reactor实现 Epoll实现
  4. Linux相关
  5. 项目3 简单问
  6. 多态虚函数纯虚函数析构函数
  7. 内存泄漏智能指针
  8. C++内存哈希底层实现各种底层代码运行过程
  9. 设计模式
  10. 手撕实现STL list
  11. 反问

面经4-C++-快手

作者:Mao

简短写一个快手二面体验,本人车辆工程非科班双非硕首先第一点,八股很᯿要,但是,面试官已经不会直接考你八股了,而且通过一些场景题,比如他让你口述算法思路查找一个整型数组中只出现一次的数,然后你说完思路

后,问你能不能优化?

然后再让你手写代码,写完代码之后,问你写的代码时间复杂度,在内存中的空间分布如何?

然后问你,既然你说到了哈希表put是常数级别复杂度,为什么是常数级别?put是怎么计算的?其

次第二个问题,问简历项目的难点我说camerax的预览,然后面试官提问给我一个二进制数据流,这个数据如何解析?如何在磁盘保存?怎么获取图片数据流的信息?

这里我以为是说api,就把处理过程涉及的方法简单说了一下,然后面试官问,你的课程里面有没有操作系统?我说没有车辆都不涉及这些,然后面试官说没事儿,说这个问题在操作系统里面都有,然后开始给我介绍,二进制数

据有文件头描述信息存储位置图片格式等等,然后我才明白,然后面试官说没问题了,让我反问。

然后我说,感觉这些基础和实现需求没什么太大关系来着,面试官说你要往深层次想,快手这边都有自研的网络协议,自研的代码设计语言和编译器等等,说不了解基础,难以进行底层性能优化! 等等。不过最后说人几天内反馈

结果,让我耐心等总体而言,面试官技术能力很强,而且很和善,自己还需要多多加强基础知识

面经5-C++-字节跳动

  1. 自我介绍balabala
  2. C++基础

都说c++是面向对象的语言,面向对象的三个特性能 [展开] 介绍一下吗?

多态的底层实现有了解过吗?

虚函数它底层又是怎么实现的?

(场景一)有两个类它们的实例变ᰁ以及它们支持的函数方法完全相同,一个类实现了一个虚函数,它们有什

份 public 变ᰁ(一直在引导我,是一份、两份、三份)

  1. 内存

malloc 跟 new 有什么区别呀?

new 除了分配内存它还会比 malloc 还有其他额外的操作吗?(说了new 创建对象,但是面试官实际想说 new 操作多了一次构造函数的调用)

new 实际上是做了两件事嘛,一个是分配内存、一个是调用实例的构造函数,那有了解过 new 可以只进行一个操作嘛?比如只分配内存不调用构造函数、或者只调用构造函数不分配内存嘛?

一个代码题目不是算法题:

struct { char A;

char B;

int C;

}

struct { char A;

int C;

char B;

}

问对这两个结构体调用 sizeof 的结果分别是什么:

  1. STL

看你写了对STL熟悉,那智能指针你有了解过嘛?(先具体说了那三个指针,然后随口说了项目中也用到了)

举一个实际场景智能指针的例子?为什么用?怎么使用的?不用可以嘛?(这里我说了shared_ptr的实例,然后就随口说实际也用到了unquie_ptr,然后面试官又问这个指针的实例,这里其实在面试的时候

可以适当的引导面试官去问一些自己了解的内容,增加表达的内容)

刚才你提到了shared_ptr 底层是用一个引用计数来实现的共享,那还了解过其他的内存管理方式嘛?

(这里完全涉及盲区,面试官又提醒了一下)引用计数实际上是一种内存管理的策略嘛,实际上除了 C++可能需要我们手动释放嘛,其他的变成语言可能也不用实际代码编写上去关心内存的释放,实际上

也有自己的内存管理策略嘛,你还了解到其他的内存管理策略嘛?比方说 JAVA、JS(这里其实我还是不知道在瞎说,就又问了一遍,面试管提醒了一下,说JAVA的垃圾回收了解过吗?然后我一听回收直接去

说内存不足的回收策略了,完全误解了,理解的还是太浅了)

STL 里边常用的 vector 容器的扩容机制有了解过嘛?

刚才提到了2倍扩容、那为什么2倍、3倍可以嘛?

vector 的初始容ᰁ了解过嘛?什么时候会进行初次扩容?(这里有点胡说了,说初始容ᰁ是0、然后面试官反问 0 怎么扩容呢,我又改了 1,面试官就很无语了)

  1. 操作系统

操作系统并发和并行有什么区别?

全站分卷索引 · 152 卷
  1. 1代码随想录知识星球精华(最强八股文)第五版(面经篇)
  2. 2后端面经02-美团
  3. 3Java面经02-阿里ICBU
  4. 4Java面经-04-CVET
  5. 5Java面经-06-字节后端
  6. 6Java面经08-用友
  7. 7Java面经09-快手
  8. 83. 计算机网络
  9. 94. 数据库
  10. 105. 算法
  11. 11Java面经11-美团
  12. 121.3 java的4种引用
  13. 132. JVM
  14. 143. 操作系统
  15. 154. 计算机网络
  16. 165. 数据库
  17. 17Java面经13
  18. 18Java面经14
  19. 19Java面经16
  20. 20Java面经17
  21. 21Java面经18
  22. 22二面
  23. 23三面
  24. 24面经19-Java-字节暑期实习
  25. 25字节三面
  26. 26面经21-Java-蚂蚁暑期实习
  27. 27蚂蚁三面
  28. 28MySQL
  29. 29计算机网络
  30. 30拉链法的工作原理
  31. 31确定桶下标
  32. 32扩容 - 基本原理
  33. 33链表转红黑树
  34. 34子进程和线程的区别
  35. 35协程
  36. 36数据库
  37. 37哈希索引
  38. 38计算机网络
  39. 39TCP和UDP的区别
  40. 40面经25-Java-百度二面
  41. 41面经26-Java-京东一面
  42. 42面经27-Spring
  43. 43计算机基础面经28
  44. 44计算机基础面经29
  45. 45计算机网络
  46. 46操作系统
  47. 47任务调度算法
  48. 48数据库
  49. 49计算机基础面经31
  50. 50乐观锁两种实现机制
  51. 51版本号机制
  52. 52死锁相关问题
  53. 53计算机网络
  54. 54拥塞控制的四种方法
  55. 55计算机基础面经32
  56. 56三次握手的流程
  57. 57计算机基础面经33
  58. 58计算机基础面经34
  59. 59异步
  60. 60C++后端
  61. 61面经3-C++-地平线
  62. 62面经6-C++-国电南瑞
  63. 63面经7-c++后端-字节
  64. 64二面
  65. 65面经11-C++-OPPO
  66. 66面经12-C++-商汤
  67. 67SelectDB
  68. 68面经15-C++-中望
  69. 69面经16-C++-米哈游
  70. 70面经17-C++-旷世
  71. 71面经19-C++-蔚来
  72. 72面经20-C++-第四范式
  73. 73面经21-C++-TP-Link
  74. 74面经23-C++-猿辅导
  75. 75面经25-C++-文远知行
  76. 76面经26-C++-百度
  77. 77百度二面
  78. 78百度三面
  79. 79面经27-C++-ZEKU
  80. 80ZEKU哲库HR面
  81. 81面经28-C++-VIVO
  82. 82面经29-C++-TPLINK
  83. 83字节二面
  84. 84HR面
  85. 85面经32-C++
  86. 86TCP的粘包与拆包
  87. 87引入协程的原因
  88. 88面经34-C++
  89. 892. 指针与引用的区别
  90. 902. Nagle 算法与延迟确认
  91. 91数据库
  92. 922. MVCC-多版本并发控制
  93. 93计算机网络
  94. 94面经36
  95. 95面经37
  96. 96面经38
  97. 97面经39-C++-拼多多+字节
  98. 98字节一面【7.27】
  99. 99shopee测开一面【7.29】
  100. 100一、表面上开销
  101. 101面经44-京东二面
  102. 102Go后端
  103. 103二面
  104. 104面经3-Go-字节日常实习
  105. 105字节二面
  106. 106字节三面
  107. 107HR面
  108. 108面经5-Go-字节暑期实习
  109. 109字节二面
  110. 110字节三面
  111. 111面经02-测开-百度提前批
  112. 112二面
  113. 113面经06-测试-海尔智家
  114. 114面经07-测开-蔚来
  115. 115面经09-测试-中望
  116. 116面经10-测开-ZEKU
  117. 117面经12-测试-科大讯飞
  118. 118面经15-测开-美团暑期实习
  119. 119面经16-测开-外企社招
  120. 120Nvidia四面
  121. 121面经2-前端-百度日常实习
  122. 122面经3-前端-得物面经
  123. 123面经4-前端-腾讯健康
  124. 124面经5-前端-字节面经
  125. 125面经6-前端-携程前端
  126. 126面经7-前端-顺丰
  127. 127面经9-前端-比特大陆日常实习
  128. 128面经10-前端-抖音
  129. 129面经11-前端-蔚来/百度/oppo
  130. 130百度提前批
  131. 131面经12-前端-知乎暑期实习
  132. 132知乎二面
  133. 133百度二面
  134. 134面经2-Android客户端-大疆
  135. 135二面
  136. 136面经3-客户端-字节暑期实习
  137. 137字节二面
  138. 138字节二面(深入项目,1h)
  139. 139面经5-客户端-字节
  140. 140面经6-客户端-字节
  141. 141算法
  142. 142面经3-NLP-科大讯法
  143. 143面经4-NLP-科大讯法
  144. 144面经7-游戏算法-莉莉丝
  145. 145面经10-算法
  146. 146面经11-算法-百度pnc暑期实习
  147. 147百度二面
  148. 148抖音一面
  149. 149嵌入式
  150. 150面经3-嵌入式-芯动科技
  151. 151面经4-嵌入式-韶音科技
  152. 152面经6-嵌入式-新华三