腾讯面试题 · 问题拆解 · C++
腾讯相关面试题,按最终去重题目聚合。
共 3056 道真题 · 当前筛选命中 15 道 · 更新 2026-08-05
筛选题目已选:问题拆解 · C++
考察点
技术栈
第 1 题C++中多态是如何实现的?请解释虚函数表(vtable)和虚指针(vptr)的工作原理。 考察C++多态实现机制、虚函数表与虚指针的底层原理第 2 题智能指针析构时,引用计数如何变化?何时真正释放资源? 考察智能指针析构时引用计数递减与资源释放条件第 3 题C++ 中内存管理的主要方式有哪些? 考察对栈、堆、智能指针等内存管理机制的理解第 4 题请解释 STL 中 vector 的 push_back 操作的时间复杂度,并说明其扩容机制如何保证均摊复杂度为 O(1)。 考察对 STL 容器底层实现、扩容策略及均摊复杂度分析的理解第 5 题请谈谈你对 C++ 纯虚函数的理解。 考察面向对象抽象、接口设计与多态机制的理解第 6 题请介绍 C++ 中默认构造函数、拷贝构造函数和移动构造函数的特点及使用场景。 考察 C++ 构造函数类型、语义及资源管理意识第 7 题在 C++ 中,除了拷贝构造,还有哪些操作会使 shared_ptr 的引用计数增加? 考察 shared_ptr 引用计数变化的多种来源第 8 题智能指针被赋值时,引用计数如何变化? 考察智能指针赋值时引用计数变化的深层理解第 9 题一个函数的参数以值传递的方式传入一个 shared_ptr,引用计数会如何变化? 考察 shared_ptr 值传递时的引用计数机制第 10 题C++中堆和栈的区别有哪些 考察C++内存管理基础与堆栈机制的理解第 11 题请实现一个函数,找出无序数组中第 k 大的元素。 考察排序算法、堆与快速选择等实现能力及复杂度分析第 12 题C++11中移动构造函数和移动赋值运算符在什么情况下会被调用? 考察移动操作触发条件的准确判断第 13 题将 shared_ptr 以右值(如 std::move)方式传入函数参数,引用计数如何变化? 考察右值传递时移动语义对引用计数的优化第 14 题请说明C++中const关键字在不同场景下的用法。 考察对const修饰符的掌握程度及底层语义理解第 15 题假设有一个A.cpp和B.cpp,A.cpp调用B.cpp的方法,是如何找到的? 考察C++编译链接流程中符号解析与链接器的工作原理