小米c++一面

刚面要趁着脑子热乎,赶紧记录一下
问了很多操作系统相关的,总结就是八股非常全面而且深入,全程一个多小时,手撕五分钟,剩下时间全在八股。
以下都是我没回答好的
1-说一下osi七层模型,数据在每一层怎么转换的,说一下ip地址到mac地址的过程
2-栈空间都保存了什么东西,具体一点
3-死锁的产生,死锁如何检测
4-如果在析构函数抛出异常会怎么样
5-为什么析构函数不是虚函数,就不调用子类的析构函数了?
6-pcb tcb 到底存了什么?
7-父进程怎么解决僵尸进程?如何避免?
8-孤儿进程怎么避免,怎么解决
完了,忘了,暂时就记起来这么多,后面再补充
全部评论
析构函数不是虚函数,就不调用父类的析构函数 这个不是应该不调用派生类的析构函数吗
点赞 回复 分享
发布于 2023-10-12 10:53 浙江
m
点赞 回复 分享
发布于 2023-10-12 10:04 上海
mark
点赞 回复 分享
发布于 2023-10-12 09:52 江苏

相关推荐

问题的定义和发现过程:今天在做毕业设计的项目,发现两个系统之间可能存在耦合。一开始的想法是使用事件的方式来解耦。后来发现不仅这两个系统之间存在耦合,也普遍存在于其他系统间。解决方法的联想和具体方案:正好最近在看面经,发现大家大部分情况都被问到了设计模式,所以就想着看看啥设计模式可以解决这个问题。最后选择了观察者模式。于是就去google了一下什么观察者模式,就我浅显的一个小时了解之后,用我个人的话来理解就是:观察者模式可以理解为有一些类(类1),他们的行为在设计上会影响别的类(类2、3、4)。但是我们需要在开发过程正避免类2、3、4直接调用类1的某些字段来更新状态,导致耦合。所以我们可以实现一个发布者接口,让类1实现这个接口,同时实现一个订阅者接口,让类2、3、4实现这个接口。另外需要类1维护一个动态的订阅者列表,在类1的某些状态改变的时候,通过事件发布给所有依赖于这个状态的订阅者。这样订阅者就可以避免通过直接访问发布者某些字段的行为来改变自己的特定状态,达到解耦的目的。(我对接口和事件的知识还比较浅,而且是刚刚了解了观察者模式,如果有理解错误欢迎指出,写这个贴子目的在于记录自己的每日学习,并且锻炼结构化思考问题的能力。)资料参考:https://refactoringguru.cn/design-patternshttps://www.runoob.com/design-pattern/observer-pattern.html
点赞 评论 收藏
分享
评论
8
112
分享

创作者周榜

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