虎牙面试题 · 风险判断 · C++

虎牙相关面试题,按最终去重题目聚合。

763 道真题 · 当前筛选命中 18 · 更新 2026-08-05

筛选题目已选:风险判断 · C++
第 1 题野指针、空指针和数组越界访问有什么区别?请分别说明其触发异常的类型。 考察对指针与内存访问级别及对应错误类型的辨析风险判断技术原理CC++Java第 2 题引用和指针的区别 考察C++基础概念理解及内存安全认知风险判断技术原理C++第 3 题请解释C++中的浅拷贝和深拷贝,并说明它们在什么场景下会导致问题,以及如何避免这些问题。 考察对C++对象拷贝语义的理解及内存管理风险意识风险判断技术原理C++第 4 题请说明 shared_ptr 的实现原理,包括引用计数机制和线程安全注意事项。 考察智能指针底层实现、引用计数和并发安全理解风险判断技术原理C++第 5 题野指针怎么排查和避免? 考察对指针生命周期管理、悬空引用识别与调试工具运用的系统性理解风险判断技术原理问题排查CC++第 6 题shared_ptr 的实现原理是什么?引用计数是如何工作的? 考察 shared_ptr 底层引用计数机制和线程安全问题风险判断技术原理C++第 7 题若给这个没有成员变量的类添加一个虚析构函数,类的大小是多少?会发生什么变化? 考察虚函数表指针与类大小变化风险判断技术原理C++第 8 题虚析构函数有什么用? 考察对多态析构、内存安全和继承体系的理解风险判断技术原理C++第 9 题C++ 中智能指针的核心原理和使用场景是什么? 考察对 RAII、所有权管理和智能指针类型选择的掌握风险判断技术原理C++第 10 题请解释野指针的定义、产生原因及其主要危害。 考察对野指针本质及其风险的理解风险判断技术原理CC++第 11 题构造和析构需要重写吗? 考察对 C++ 内存管理、资源所有权和默认特殊成员函数的理解风险判断技术原理C++第 12 题如果 vector 存储的是类对象,而另一个 vector 存储的是类指针,这两者在扩容时有什么区别? 考察对象内存管理与扩容开销的差异风险判断技术原理方案权衡C++第 13 题如何提前预防野指针问题? 考察对野指针成因和系统性预防手段的理解风险判断技术原理C++第 14 题请说明野指针的权限问题:为什么对野指针执行读写操作可能带来安全风险? 考察对内存权限与安全影响的理解风险判断安全意识CC++第 15 题请说明C++底层是如何管理堆内存的,以及如何减少内存碎片? 考察对C++内存分配器实现和碎片优化策略的了解风险判断技术原理C++第 16 题请说明在哪些场景下应该使用 weak_ptr,并解释其设计意图。 考察对 weak_ptr 适用场景及与 shared_ptr 协作方式的理解风险判断技术原理C++第 17 题shared_ptr 是线程安全的吗? 考察对 shared_ptr 线程安全语义的理解及并发使用场景风险判断技术原理C++第 18 题使用 shared_ptr 管理数组资源时需要考虑哪些问题? 考察智能指针处理数组资源的正确性意识风险判断技术原理C++