(c++)面试不慌张,你必须掌握的面经

1. C++中的智能指针(如std::shared_ptr和std::unique_ptr)有什么区别?
2. 解释一下C++中的RAII(资源获取即初始化)原则。
3. C++中的friend关键字有什么作用?它如何影响封装性?
4. 什么是C++中的Lambda表达式?它的应用场景有哪些?
5. C++中的构造函数和析构函数有什么区别?
6. 什么是C++中的“移动语义”?它如何提高性能?
7. C++中的std::function和函数指针有什么区别?
8. 解释一下C++中的“深拷贝”和“浅拷贝”。
9. C++中的static关键字有什么作用?在类中如何使用?
10. 什么是C++中的“虚函数表”(vtable)?
11. C++中的std::shared_ptr的引用计数机制是怎样的?
12. 如何在C++中实现一个简单的策略模式?
13. C++中的std::array的优缺点是什么?
14. 解释一下C++中的“异常处理机制”。
15. C++中的模板特化(template specialization)是什么?如何使用?
16. 什么是C++中的“命名空间”?它的作用是什么?
17. C++中的std::map是如何实现的?
18. 如何在C++中实现多重继承?有何注意事项?
19. C++中的const关键字有什么作用?如何使用?
20. 解释一下C++中的“拷贝构造函数”和“赋值运算符”。
21. C++中的std::string的实现原理是什么?
22. 什么是C++中的“类型推导”?
23. C++中的volatile关键字有什么作用?
24. 如何在C++中实现一个简单的状态模式?
25. 解释一下C++中的“智能指针的循环引用”问题。
26. C++中的std::atomic是什么?它的使用场景有哪些?
27. 什么是C++中的“内联函数”?它的优缺点是什么?
28. C++中的std::thread如何创建和管理线程?
29. 解释一下C++中的“构造函数委托”。
30. C++中的std::string_view是什么?它的使用场景有哪些?

答案附在面经中
全部评论
祝前程似锦~
1 回复 分享
发布于 09-05 10:38 广东
大佬,我想问一下这些是背过记住就可以了吗?面试的时候还会手写代码吗?非科班不太懂
点赞 回复 分享
发布于 09-04 23:33 山东
天翼云科技有限公司
校招火热招聘中
官网直投

相关推荐

1. C++11有哪些新特性?2. 函数有哪些常见的传参方式,有何区别?3. 指针和引用有什么区别?4. 指针常量和常量指针有何区别?5. 常见的内存泄漏发生场景有哪些?6. 常见的内存泄漏检测工具有哪些?7. 虚拟内存和物理内存的区别是什么?8. 内存空间有哪些区域?分别是做什么的?9. 段页式内存管理有何优点?10. 说一下智能指针的类型及其区别。11. 内联函数是什么?和宏有何区别?它有什么优缺点?12. 什么是多态的底层原理?13. C++空类的大小是多少?如果空类内含有虚函数,类的大小又是多少?14. 讲讲内存对齐。15. 虚函数可以是模板函数吗?16. 虚函数可以内联吗?17. 32位Linux系统的寻址空间是多大?进程能申请的内存有这么大吗?18. Linux系统中调试崩溃问题的流程是?19. 栈溢出一般是由哪些原因导致?20. static关键字有什么用?static变量修饰全局、函数内和类内变量时,分别在什么时候进行初始化?21. 初始化列表有什么好处?哪些成员变量必须通过初始化列表初始化?22. 什么是右值引用?说一下什么是移动语义及使用场景?23. malloc/free和new/delete有什么区别?24. std::vector和std::list有什么区别?讲一下vector动态扩展的原理。25. Vector动态扩展时,编译器为什么不先判断一下原有空间后面的内存是否空闲?26. std::unordered_map和std::map的区别是什么?它们的底层数据结构是什么?27. priority_queue优先级队列的底层数据结构是什么?操作的时间复杂度是什么?28. 红黑树与AVL树有什么区别?与堆有什么区别?29. 如果让你用一维数组模拟一个大根堆,你怎么实现?30. C++编译过程分为哪几步?动态链接和静态链接的区别是?问题答案已经整理到专栏中了,关注我分享更多知识。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
点赞 评论 收藏
分享
1. 解释一下C++中的多态性。2. 什么是模板?它有什么用?3. 你能描述一下类型擦除吗?4. 命名空间的嵌套有什么好处?5. 析构函数可以重载吗?6. volatile和const的区别是什么?7. 虚继承的概念是什么?8. 异常安全性有哪些级别?9. 描述析构函数的调用顺序。10. std::vector是如何实现的?11. 如何实现单例模式?12. nullptr的作用是什么?13. std::list的优缺点是什么?14. std::unordered_map的实现原理是什么?15. 函数重载和运算符重载有什么不同?16. std::deque的特性是什么?17. 如何处理内存泄漏?18. 如何实现自定义异常类?19. std::shared_ptr的自定义删除器是什么?20. std::move的具体作用是什么?21. std::bind的用途是什么?22. std::optional的使用场景是什么?23. std::variant的特点是什么?24. 如何解决std::shared_ptr的循环引用?25. 如何实现自定义内存分配器?26. std::mutex的作用是什么?27. 条件变量的工作原理是什么?28. 如何实现观察者模式?29. std::string的移动构造函数有什么作用?30. static_cast和dynamic_cast的区别是什么?问题答案已经整理到专栏中了,关注我分享更多知识。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
点赞 评论 收藏
分享
11 129 评论
分享
牛客网
牛客企业服务