柠檬微趣-C++客户端一面凉经

#面试吐槽bot##柠檬微趣#
一、自我介绍
二、C++内存对齐,计算三个结构体的大小
三、介绍多态,虚函数、虚函数表、虚函数表指针、虚析构函数(主要就是考查内存布局)、构造函数能否为虚函数?为什么
四、多继承中多个虚函数指针是存放在数组中还是单独的指针变量(之前只大致扫了一下多继承/菱形继承问题,没想到问这么细)
五、map底层原理,是否有序,介绍一下红黑树(根叶黑/不红红/黑路同),查找/删除/插入的时间复杂度(O(logn))(习惯性直接回答成unordered_map了,重新回答了,笑死)
六、内存泄漏是什么,如何避免、检查、解决(例如析构函数调用前发生程序异常,造成内存泄漏等等,代码逻辑考虑准确、RAII手法/智能指针、valgrind)
七、介绍一下智能指针:shared_ptr/weak_ptr/unique_ptr/scope_ptr,各自特点、区别、应用场景
八、手写shared_ptr,包含六个函数:无参构造、有参构造、拷贝构造、移动构造、赋值运算符重载、析构函数
九、测试上面的所有函数,打印引用计数值(测试析构的时候,面试官给了提示)

补充:问多态的时候,也问到了一些子类、父类指针的类型转换/直接对象转换

周三面,周日感谢信;面试过程中感觉良好,都是纯C++八股,被挂了还蛮沮丧

找不到暑假实习了,挂麻了
全部评论
这问的已经挺难了,虽然也是常见面试题,但都是深度提问,要求掌握比较熟练,还有手写shead_ptr,大部分人都过不了
5 回复 分享
发布于 05-19 11:32 河南
离谱,这tm是实习面试?
1 回复 分享
发布于 05-22 23:58 广东
本来不想学手撕共享指针的,怎么真考啊
点赞 回复 分享
发布于 06-09 21:39 黑龙江
放心兄弟起码你还有面,我有你这水平学院本面都没有
点赞 回复 分享
发布于 05-27 15:31 广东
我也是,这家感觉要求好高...我感觉我也很良好,一直在手写
点赞 回复 分享
发布于 05-20 17:33 重庆
byd难死了
点赞 回复 分享
发布于 05-20 07:49 湖南

相关推荐

一面:面试官1:lamda表达式的值捕获和引用捕获的区别C++的四种强制类型转换explicit关键字C++智能指针RAII实习实习遇到过什么困难吗std::async的policy是使用的哪一种system call的过程函数调用的过程手撕:同分异构树的判断面试官2:英文自我介绍lamda表达式的值捕获和引用捕获的区别mutable关键字在Linux中如何查看中断中断处理的过程中断共享伙伴系统了解吗Linux如何进行内存管理如何查看内存泄漏如何优化C++代码对图像和视频的处理了解吗手撕:岛屿问题二面:(一周后)面试官1:对未来的规划面向对象和面向过程的区别C++多态C++的四种类型转换C++11的智能指针,最常用的是哪种怎么避免两个类的循环引用问题C++中 struct 和 class 有什么区别深拷贝和浅拷贝的区别什么时候用友元线程的同步和互斥线程同步要怎么实现可重入代码怎么理解设计模式了解吗给一段代码,对代码进行纠错和优化面试官2:对未来的规划你的最大的优点和缺点是什么读取二维数组为什么行优先比列优先好你对项目完成的评判指标是什么如果做嵌入式TCP功能,你的评判指标是什么有三个用户同时找你,而你只能做一个你会怎么做为什么各个项目的方向跨度大为什么颜色是用RGB编码不用其他颜色英语怎么样英文自我介绍英文:为什么选择英伟达实习手撕:n!的结尾有多少个连续的0三面:(一周后)第一段实习做了什么第二段实习做了什么实习中遇到了什么困难吗你认为面试难度怎样你面试中遇到的最难的问题是什么面试中有coding吗会vim吗vim中如何定位到上次打开的地方如何查看项目依赖哪些库英语:介绍一下webserver项目PV操作是什么项目是你独立完成还是团队合作有没有团队合作的项目offer:四天后
点赞 评论 收藏
分享
评论
7
41
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务