前端/移动开发面试题 · C++

前端/移动开发相关岗位面试题。

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

筛选题目已选:C++
第 381 题请介绍 C++ 中的类型转换操作符及其使用场景,并对比 static_cast、dynamic_cast、const_cast 和 reinterpret_cast 的区别。 考察对 C++ 类型转换操作符的理解和正确选型能力风险判断技术原理技术选型C++第 382 题请讲讲 C++ 中的四种类型转换。 考察对 C++ 类型转换机制及其适用场景的理解技术原理C++第 383 题请解释C++中unordered_set的实现原理和主要特性。 考察对哈希表容器底层实现的理解及适用场景风险判断技术原理C++第 384 题空类的大小是多少?为什么要设置为1字节? 考察C++空类内存布局及对象唯一地址化原理技术原理C++第 385 题请解释 C++ 中虚函数和虚基类的概念、作用及实现原理。 考察对 C++ 面向对象核心机制的理解深度技术原理C++第 386 题请解释C++中虚函数的作用及其实现的原理。 考察对多态、动态绑定和虚函数表机制的理解技术原理C++第 387 题在C++多继承中,子类和父类的虚函数表分别如何组织?虚函数代码存放在内存的哪个区段? 考察C++多继承下的虚函数表布局与对象模型理解问题拆解技术原理C++第 388 题在实际C++开发中,如何选择类型转换方式(static_cast、dynamic_cast、const_cast、reinterpret_cast)? 考察C++四种类型转换的适用场景和选择能力风险判断技术选型方案权衡C++第 389 题std::vector 按索引查找元素的时间复杂度是什么? 考察对动态数组随机访问特性的理解问题拆解技术原理C++第 390 题在C++中,int和int&作为函数参数是否满足重载条件?为什么? 考察引用类型与值类型在重载决议中的区别技术原理C++第 391 题什么是构造函数,什么是析构函数?构造函数初始化列表有什么用? 考察对C++对象生命周期管理及初始化列表机制的理解编码实现技术原理C++第 392 题请谈谈你对C或C++的使用经历,以及你对它们底层机制的理解程度。 考察候选人对C/C++的实际使用经历与底层原理的掌握深度持续改进自我认知技术原理CC++第 393 题C++ 中菱形继承是什么?它会导致什么问题? 考察对 C++ 多重继承与菱形继承内存布局的理解问题拆解技术原理C++第 394 题malloc和new的区别是什么? 考察对C/C++内存管理机制的理解技术原理CC++第 395 题请解释多态、虚函数表和虚表指针分别是什么,以及它们的产生时机。 考察对C++多态实现机制和对象布局的理解技术原理C++第 396 题struct的sizeof在不同编译器下为什么不同 考察结构体内存布局、对齐规则及编译器差异的理解技术原理方案权衡CC++第 397 题当一个子类多继承两个父类,且两个父类都声明了相同的虚函数时,子类重写的是哪个虚函数? 考察C++多继承下虚函数重写的解析与歧义处理技术原理C++第 398 题一个shared_ptr和一个weak_ptr指向同一资源,当shared_ptr退出作用域后,weak_ptr还可以访问该资源吗? 考察shared_ptr与weak_ptr的生命周期管理及weak_ptr的特性风险判断技术原理C++第 399 题std::function可以接受lambda表达式,这个转换是怎么实现的? 考察对std::function类型擦除机制和lambda到函数对象转换原理的理解编码实现技术原理C++第 400 题有一个原子布尔变量 a 和一个原子布尔变量 b,写线程依次将 b 置为 true,再置 a 为 true;读线程循环读取 b,当读到 true 时立即读取 a。请分析在 C++ 中(使用 std::atomic<bool>)读线程可能读到 a 的哪些值? 考察原子操作的内存序对多线程可见性的影响问题拆解技术原理C++