腾讯二面
1. C++虚函数实现原理是什么?虚表、虚指针在内存中如何布局?多重继承、虚继承会有什么变化?
2. 智能指针有哪些?shared_ptr 的循环引用问题怎么产生、怎么解决?weak_ptr 原理是什么?
3. C++内存模型与内存泄漏常见场景。你在项目中如何定位内存泄漏?(如 Valgrind、AddressSanitizer)
4. 多线程:volatile 关键字作用与误区,mutex 原理,死锁产生条件及避免方法。
5. C++11及以后你常用哪些特性?lambda、右值引用、移动语义、完美转发分别解决什么问题?
6. TCP 三次握手、四次挥手详细过程。TIME_WAIT 状态为什么存在?大量 TIME_WAIT 如何优化?
7. epoll 的水平触发与边缘触发区别?ET 模式下为什么要非阻塞 + 循环读?
8. 手写代码:实现一个线程安全的单例模式(懒汉/饿汉/双检锁/C++11 magic static)
9. 手写代码:LRU 缓存实现(要求 O(1) 访问、淘汰),说明为什么用哈希+双向链表。
10. 项目深挖:你做过最复杂的C++项目是什么?遇到过什么性能瓶颈?怎么定位、怎么优化?(锁竞争、内存拷贝、IO、算法复杂度)
#发面经攒人品# #我的求职进度条#
2. 智能指针有哪些?shared_ptr 的循环引用问题怎么产生、怎么解决?weak_ptr 原理是什么?
3. C++内存模型与内存泄漏常见场景。你在项目中如何定位内存泄漏?(如 Valgrind、AddressSanitizer)
4. 多线程:volatile 关键字作用与误区,mutex 原理,死锁产生条件及避免方法。
5. C++11及以后你常用哪些特性?lambda、右值引用、移动语义、完美转发分别解决什么问题?
6. TCP 三次握手、四次挥手详细过程。TIME_WAIT 状态为什么存在?大量 TIME_WAIT 如何优化?
7. epoll 的水平触发与边缘触发区别?ET 模式下为什么要非阻塞 + 循环读?
8. 手写代码:实现一个线程安全的单例模式(懒汉/饿汉/双检锁/C++11 magic static)
9. 手写代码:LRU 缓存实现(要求 O(1) 访问、淘汰),说明为什么用哈希+双向链表。
10. 项目深挖:你做过最复杂的C++项目是什么?遇到过什么性能瓶颈?怎么定位、怎么优化?(锁竞争、内存拷贝、IO、算法复杂度)
#发面经攒人品# #我的求职进度条#
全部评论
相关推荐
查看14道真题和解析 点赞 评论 收藏
分享
点赞 评论 收藏
分享
