网易游戏面试题 · C++
网易游戏相关面试题,按最终去重题目聚合。
共 1713 道真题 · 当前筛选命中 158 道 · 更新 2026-08-05
筛选题目已选:C++
考察点
技术栈
第 1 题const和#define的区别是什么? 考察对C/C++常量定义方式差异的理解及对编译过程影响的掌握第 2 题如何将一个总大小为15字节的结构体压缩到恰好15字节的空间内存放? 考察对结构体内存布局、对齐规则和压缩策略的理解第 3 题请解释析构函数为何需要声明为虚函数,以及虚函数表在其中的作用。 考察对虚函数、虚函数表及析构函数多态性的理解第 4 题如何避免 shared_ptr 产生的循环引用问题? 考察智能指针循环引用原理及解决方案第 5 题在C++中,构造函数和析构函数中调用虚函数会有什么行为?为什么? 考察构造析构过程中动态绑定是否生效的特殊性第 6 题vector 扩容机制? 考察 STL vector 动态数组的容量管理与性能权衡第 7 题C++的多态怎么实现的? 考察对C++多态底层实现机制的理解第 8 题请解释C++中空指针、野指针和悬空指针的区别,并说明如何避免。 考察对指针生命周期和内存安全的理解第 9 题虚函数的原理是什么? 考察对C++多态底层实现的理解第 10 题请说明C++中浅拷贝和深拷贝的区别,以及各自存在的风险。 考察对拷贝语义和资源管理风险的理解第 11 题unordered_map 和 map 有什么区别?如何选择? 考察对哈希表和红黑树两种关联容器差异及选型判断第 12 题请解释什么是拷贝构造函数,并说明其作用以及何时会被调用。 考察对C++拷贝构造函数的概念理解和应用场景掌握第 13 题请解释C++中的虚函数机制,包括其实现原理和适用场景。 考察对C++多态底层实现和虚函数使用边界的理解第 14 题new和malloc是怎么使用的,内存泄漏是为什么?怎样去避免? 考察C++内存管理基础、new/malloc差异及内存泄漏的成因与预防第 15 题virtual和final的区别 考察C++中virtual与final关键字的核心语义与应用场景第 16 题请解释 std::shared_ptr 的工作原理及其线程安全性。 考察智能指针的引用计数机制与多线程并发访问的边界第 17 题请解释C++中的多态概念及其实现机制。 考察对C++多态核心概念、实现方式及适用场景的理解第 18 题在 C++ 中,若哈希表不使用链表且不使用其他容器,如何解决 key 冲突? 考察哈希表冲突解决的基础算法与 C++ 实现细节第 19 题STL 中常见的容器有哪些?它们分别适用于什么场景? 考察对 STL 容器分类、特性及适用场景的掌握第 20 题C++编译后生成的文件是什么?能直接运行吗? 考察对C++编译产物格式与可执行文件运行机制的理解