小马智行面试题 · C++
小马智行相关面试题,按最终去重题目聚合。
共 159 道真题 · 当前筛选命中 9 道 · 更新 2026-08-05
筛选题目已选:C++
考察点
技术栈
第 1 题vector 扩容机制? 考察 STL vector 动态数组的容量管理与性能权衡第 2 题向std::vector中尾插n个元素时,相比原生数组会多出多少次拷贝?请分析最坏情况的时间复杂度。 考察对vector动态扩容机制、拷贝次数和时间复杂度的理解第 3 题若禁用赋值函数和拷贝构造函数,同时不声明移动构造和移动赋值函数,对默认移动构造和移动赋值函数的调用是否有影响。 考察 C++ 特殊成员函数的自动生成规则及其与拷贝/移动语义的交互第 4 题类的成员函数后添加const的含义,以及定义时是否需要带上const? 考察C++中const成员函数的语义、重载规则及声明定义一致性第 5 题请谈谈你对全栈工程师的理解,以及你的技术栈(C++、Python、CUDA、PyTorch)如何支撑你在这一岗位上的工作? 考察对全栈工程师角色的理解以及技术栈与岗位的匹配度第 6 题编译器默认生成的类成员函数有哪些?如何屏蔽赋值函数和拷贝构造函数? 考察对编译器隐式生成特殊成员函数的理解及禁止拷贝的实践第 7 题请编写一个类的拷贝构造函数、拷贝赋值函数、移动构造函数和移动赋值函数,并说明各自的作用与注意事项。 考察C++四大特殊成员函数的作用、深拷贝与移动语义的实现第 8 题vector 内部的元素在内存中是否是连续存储的? 考察对 std::vector 内存布局和连续性的理解第 9 题若禁用移动构造和移动赋值函数,同时不声明拷贝构造和赋值函数,对拷贝构造和赋值函数的调用是否有影响? 考察C++特殊成员函数生成规则及移动操作被删除后的后退机制