不鸣科技C++开发实习面经

我就是牛可乐 2024-07-18 00:41:52
🙋项目就两个,一个是levelDB,一个是实验室的SAR相关的。下面的面经用录音转文本发给GPT4o总结的。 下面是一次C++开发岗位的面试记录,已经进行了修改和总结。总结了问了哪些问题,并给出了标准答案。 . ✅面试记录: 🟡面试官:好的,我们今天来简单面试一下。 🟡面试官:好的,那我们先问一下C++的一些基础知识。因为你说你开发过两个工程,那么你对C++的多态方面有哪些了解呢? 🟡面试官:那你知道怎么重写虚函数吗? 🟡面试官:你知道C++运行时多态是怎么实现的吗? 🟡面试官:你能介绍一下你做的高性能数据库项目吗? 🟡面试官:你的数据库项目中用到了多线程操作吗? 🟡面试官:你对智能指针有哪些了解? 🟡面试官:智能指针能保证对象不会内存泄漏吗? 🟡面试官:你在定义函数接口时,如何设计参数类型以提高传递效率? 🟡面试官:你用过Qt写过界面吗?有哪些功能? 🟡面试官:你还有什么问题想问我的吗? . ⭕总结: 面试问题及标准答案: 1.  自我介绍及项目经验简要介绍自身背景、技术技能及项目经验。 2.  C++多态编译时多态:函数重载、模板。运行时多态:通过虚函数和虚表(vtable)实现。 3.  虚函数重写使用override关键字重写虚函数。纯虚函数必须重写,非纯虚函数可以不加override。 4.  运行时多态实现原理通过虚表指针找到相应函数地址进行调用。 5.  高性能数据库项目描述项目功能、用途和主要挑战(如LSM树数据结构的实现)。 6.  多线程操作单线程访问,使用线程锁保护数据一致性。 7.  智能指针unique_ptr:单一所有者。shared_ptr:多个所有者,引用计数。weak_ptr:防止shared_ptr循环引用。 8.  内存管理智能指针不能完全保证内存不会泄漏(循环引用问题)。 9.  函数参数设计使用引用或右值引用提高传递效率,减少不必要的拷贝。 10.  Qt界面开发描述界面功能及实现方式(参数输入、仿真结果显示)。 11.  项目实际应用了解公司业务方向,具体负责的工作内容。 这些问题覆盖了C++语言的核心概念、项目经验及实际应用,展示了应聘者对C++及相关技术的理解和应用能力。 . 内容来自牛友:CYAN_11 来源:牛客网

0 阅读:0