柠檬微趣面试题 · 技术原理 · C++
柠檬微趣相关面试题,按最终去重题目聚合。
共 407 道真题 · 当前筛选命中 56 道 · 更新 2026-08-05
筛选题目已选:技术原理 · C++
考察点
技术栈
第 21 题include <...> 和 include "..." 的区别是什么?一个自定义的头文件能不能用 include "..." 的方式引入? 考察对 C/C++ 头文件搜索路径机制的理解第 22 题介绍智能指针,并说明三个智能指针的应用场景。 考察C++内存管理与智能指针的掌握及实际应用第 23 题请解释拷贝构造函数的作用和什么时候会被调用。 考察对C++拷贝构造函数基本概念和触发场景的理解第 24 题请谈谈你对C++内存管理的理解,包括堆与栈的区别以及如何避免内存泄漏。 考察C++内存模型的掌握和内存安全实践第 25 题手写 shared_ptr 并说明其核心设计要点 考察 C++ 智能指针的资源管理、引用计数与线程安全设计第 26 题请实现一个简化版的 shared_ptr,重点包含引用计数、拷贝构造、赋值和析构等核心功能,并说明线程安全性问题。 考察智能指针原理、引用计数实现及线程安全边界第 27 题C++多态如何实现? 考察对C++多态机制、关键要素和底层原理的理解第 28 题介绍多态、虚函数、虚函数表、虚函数表指针、虚析构函数(主要考查内存布局),并说明构造函数能否为虚函数及原因。 考察C++多态实现机制、虚表内存布局及构造函数不能为虚函数的底层原因第 29 题请解释 C++ 中虚函数和虚函数表的概念及其关系 考察对多态底层机制的理解第 30 题请解释C++ STL vector的底层实现原理。 考察对vector内存布局和存储机制的理解第 31 题请手写实现一个简化版的 shared_ptr,要求包含无参构造、有参构造、拷贝构造、移动构造、赋值运算符重载和析构函数六个核心函数。 考察 C++ 智能指针的引用计数管理、拷贝与移动语义及资源释放的正确实现第 32 题为什么基类析构函数需要声明为虚函数? 考察多态与内存安全中虚析构函数的作用第 33 题请手写一个简易的 vector 容器,实现 push_back、pop_back,并考虑扩容问题。 考察对动态数组内存管理、扩容策略和基本容器接口的掌握第 34 题构造函数可以是虚函数吗?为什么? 考察C++中虚函数机制与构造过程的关系第 35 题基类析构函数声明为虚函数的理由是什么? 考察C++虚函数机制、多态删除与资源管理第 36 题在C++中如何实现对象的拷贝? 考察对拷贝构造函数和赋值运算符的理解第 37 题在 C++ 多继承中,多个基类的虚函数表指针是如何在对象内存中布局的? 考察 C++ 对象模型与多继承下虚表指针布局的理解第 38 题malloc和new的区别具体差异有哪些? 考察C/C++内存管理基础,理解语言层面与库函数层面分配的差异第 39 题C++类有哪些默认生成的函数? 考察对C++类默认成员函数及其触发条件的掌握第 40 题请介绍 C++ 中的类型转换操作符及其使用场景,并对比 static_cast、dynamic_cast、const_cast 和 reinterpret_cast 的区别。 考察对 C++ 类型转换操作符的理解和正确选型能力