小米 Cpp 二面面经

#软件开发2023笔面经#  #小米#  #23届找工作求助阵地#
面试官上来先介绍了一下岗位,是做自动驾驶的中间件的,然后让我做了个自我介绍。
问我能实习多久,问我研究生都学啥课程。我说了两门操作系统相关,开始了第一题。

1.线程会有自己独立的栈区吗?会有独立的堆区吗?
1.你了解 Linux 虚拟内存空间吗?
2.虚拟内存有什么好处?
3.两个进程 malloc 可能会返回一个值吗?会映射到一个物理地址吗?
4.影响 C++ class 类的大小的因素有哪些?
5.内存对齐会有影响吗?
6.虚函数是怎么实现的?(具体咋问的不太记得了,反正是回答虚函数表底层)
7.析构函数为什么有时候要是虚函数?
8.用过智能指针吗?
9.死锁产生的条件是什么?Cpp 中如何避免死锁?
10.动态库和静态库有什么区别?
11.map 和 unordered_map 有啥区别?
12哈希表怎么处理碰撞问题?最差能退化到什么复杂度?
13TCP 如何保证可靠?
14 接 7  一个类空指针可以调用虚函数吗?可以调用普通函数吗?

代码题 手写生产者消费者模型,我以前没看到过这种设计模式的内容,Cpp 相关库也不会。。。还以为是要自己写 mutex sem 的操作,最后面试官还问我这是原子操作吗,为什么不用 Cpp 的 mutex,我说不会。。。。。
然后给我出了一道二叉树层序遍历,秒了。
然后反问环节。
先回忆这么多,还有的评论区再加。
全部评论
二面应该是过了
1 回复 分享
发布于 2023-04-26 12:36 北京
大佬最后去哪里了
点赞 回复 分享
发布于 2023-05-15 21:50 湖南
大佬你这是暑期实习还是日常啊
点赞 回复 分享
发布于 2023-05-02 19:21 北京
第三个题答案是什么
点赞 回复 分享
发布于 2023-04-27 16:38 北京
什么时候投的啊
点赞 回复 分享
发布于 2023-04-26 09:42 陕西
大佬,二面过了吗
点赞 回复 分享
发布于 2023-04-25 22:04 北京

相关推荐

金山一面:不完整,好像少了开始的十来分钟。1 类和对象的访问权限什么时候检测,也就是访问private私有成员时编译报错还是运行报错。2 那如何访问到类的私有成员:三种方法,友元,公有成员函数,指针(例如:直接用一个int指针去访问类的int成员,此时不会报错)。3 父类的private,public,protected成员在子类是否可见,能否访问?这个还和继承方式有关,组合起来九个情况。百度搜继承方式和父类访问控制属性图。4 父类成员和子类成员谁先什初始化,谁先析构。还可以研究下多个父类和一个子类,哪个父类先初始化,谁先析构,我记得和继承顺序是有关的。5 析构函数是虚函数吗?编译器会将其编译成虚函数。6 为什么析构函数是虚函数?7 指针引用区别?8 变量引用的引用和变量引用是否都会指向一个变量?9 const int*和int * const 区别10 左值引用和右值引用使用场景11 cpp选择题:忘记了12 move的原理,为什么能将左值变成右值13 malloc和new区别?14 new只返回一个对象的起始地址,delete也只传一个地址,delete怎么知道要释放多大的空间。(不是金山问的,好像是字节面试的时候问的)15 new返回值?16 为什么要有抛异常代替返回值17 cpp类型转换的操作符(static_cast……那四个)18 父类的指针和引用变成子类的指针和引用是否要调用构造函数(不用)。19 智能指针(auto_ptr,shared_ptr,unique_ptr)20 说说什么时候会发生循环引用,如何解决?21 如果vector v1里面存了unique_ptr,如何拷贝给另一个容器v222 map,hash插入删除的时间复杂度23 哈希冲突解决方法24 vector和list的迭代器失效25 进程线程区别26 线程会有自己的堆栈吗?27 算法题:找第k层节点个数:层序遍历。28 找相交链表的第一个公共节点。二面没记录😁,不过很短,貌似半小时,而且还写了算法题,估计拷打八股就十分钟tl:一面:4.22二面:4.29下午三点,测评六点发hr面:5.12直接发邮件约第二天。oc:6.18,base转武汉。录用邮件:6.21。很明显是补录的了,纯运气好,双非还是不要all in 等。
查看28道真题和解析
点赞 评论 收藏
分享
评论
19
127
分享

创作者周榜

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