NiceOffer

面试面经 · 华为

【华为】C++后端一面(语言基础+网络分层+手撕字符串处理)

华为C++后端校招面经一面

【华为】C++后端一面

基本信息

项目内容
公司华为
岗位C++ 软件开发(OD/校招)
轮次技术一面
时间2025年6月
面型体感标准基础筛选,不刁钻但要求扎实
结果通过

面试题目(按提问顺序)

  1. 自我介绍,介绍个人背景、项目经历和开发技能
  2. C++ 和 C 的区别有哪些?(面向对象、泛型编程、异常处理等)
  3. #define 和 const 的区别?(编译期 vs 预处理、类型安全、调试友好度)
  4. 堆和栈的区别?new/delete 和 malloc/free 的区别?
  5. C++11 有哪些新特性?(智能指针、auto、右值引用、lambda 等)
  6. 多态是什么?虚函数的实现机制?(vtable 和 vptr)
  7. vector 和 list 的区别?vector 的扩容机制是怎样的?
  8. STL 中有哪些常用容器和算法?
  9. 计算机网络七层模型 / 五层模型?各层的主要协议?
  10. TCP 三次握手和四次挥手?为什么不能两次握手?
  11. HTTP 和 HTTPS 的区别?HTTPS 的加密过程?
  12. 什么是死锁?产生的四个必要条件?如何预防和解除?
  13. 进程间通信方式有哪些?
  14. DFS 和 BFS 的区别和适用场景?
  15. 介绍一下负责项目的架构和具体功能模块
  16. 手撕代码(本地 IDE 编译运行):字符串处理题(如:给定字符串如 "$ad$$gf$",算出最后一个 $ 符号前的字母数量)

面试感受 / 反馈

  • 一面是标准的基础筛选,不追求刁钻但要求基本功扎实
  • C++ 基础题要能"可追问":不能只答一句话,要能展开到原理和工程应用
  • 手撕代码需要在本地 IDE 完成,要提前熟悉编译运行流程
  • 面试官会看三个方面:语言基础、数据结构体系、现场编码能力

准备建议

  • C++ 基础高频题要准备到"三层深度":概念→原理→工程应用
  • 手撕代码要在本地 IDE 练习,不只是在 LeetCode 网页上写
  • 网络分层、死锁、进程通信是必考项
  • 机试分数也很重要(满分 400),建议提前刷 LeetCode/牛客算法题

反问示例

  • 部门主要做什么方向的业务?
  • 后续工作中可能会用到哪些技术栈?