小米社招1+2+3面(C/C++)

一面:
  1. C++面向对象的三种特性?(每条详细说说)
  2. C++继承和组合?你在实际项目中是怎么使用的?什么情况下使用继承?什么情况下使用组合?
  3. C++构造函数可以是虚函数吗?为什么?
  4. C++析构函数可以是虚函数吗?为什么要将析构函数设置为虚函数?
  5. C++如何实现多态?虚表指针是什么时候被初始化的?实例化一个对象需要那几个阶段?(三个)
  6. C++偏特化?
  7. 重载、重写、覆盖?
  8. static关键字的作用?(要全面)怎么实现的?
  9. inline和宏定义的区别?inline是如何实现的?宏定义是如何实现的?
  10. 指针和引用的区别?怎么实现的?
  11. malloc和mmap的底层实现?malloc分配的是什么?(底层详细回答)
  12. Linux进程地址空间布局?(这里又问道虚拟内存和分页、页表这些东西)
  13. tcp的握手挥手过程?(详细)tcp为什么要连接?tcp建立连接这里你是怎么理解的?
  14. 半连接队列?全连接队列?
  15. tcp流量控制和拥塞控制?
  16. time_wait状态?为什么是2msl?
  17. 有很多close_wait怎么解决?
  18. 阻塞和非阻塞?同步和异步?
  19. 五种IO模型?
  20. select和epoll有什么区别?epoll的LT和ET模式?
  21. udp为什么是不可靠的?bind和connect对于udp的作用是什么?
  22. NAT是什么?底层实现原理?
  23. 斐波那契数列的非递归写法?(写出代码)
  24. 共享桌面用你熟悉的任意画图工具画项目架构图?(我用的ProcessOn)
  25. 聊项目?
  26. 总共用时两个小时吧,问了很多,有些已经想不起来了。
二面:
  1. 聊项目
  2. struct{
        char a;
        short b;
        int c;
        char d;
    };
    占多少内存?然后又扯到位域?
  3. map和unordered_map的底层实现?目前map支持map[10] = 20这种操作,其底层怎么实现的?和insert有什么区别?
  4. map如何遍历删除所有元素?迭代器失效?
  5. 一个unique_ptr怎么赋值给另一个unique_ptr对象?(std::move)
  6. int *sp = new int{10};
    shared_ptr<int> sp1(sp);
    shared_ptr<int> sp2(sp);
    这段代码会有什么问题?引用计数如何变化?
  7. #include <sys/types.h>
    #include <unistd.h>
    
    pid_t pid1;
    pid_t pid2;
    
    pid1 = fork();
    pid2 = fork();
    
    cout << "cur pid:"<<getpid() << ",pid1:" << pid1 << ",pid2:" << pid2 << endl;
    这段代码打印输出?(写出来:四组)
  8. pthread_detach和pthread_join的作用?
  9. 僵尸进程和孤儿进程?
  10. 一个进程能不能绑定到一个cpu?系统调用接口是什么?线程呢?
  11. 对于使用tcp通信的两端,如果client已经退出,此时服务端继续send会出现什么问题?这个当然就要扯到SIGPIPE信号了?
  12. 一个整数数组,可能是降序或升序,也可能是先升序再降序,求最大值?(几秒后就让我赶紧说思路)
  13. 写代码:单链表,求中部的N个节点的头节点和尾节点?(需要写测试用例)
三面:
  1. 为什么离职?
  2. 聊项目?
  3. 一致性hash?能不能用到你刚才的项目中?
  4. c语言的函数调用栈底层详细说说?
  5. static变量存放在哪里?什么时候分配的内存?(这里感觉面试官优点不太清楚,我就详细说了说)
  6. k-v数据库如果get有百分之80的数据都不命中有什么好的处理方法?
  7. 项目中遇到缓存穿透问题怎么处理?
  8. map的底层实现?zset的底层实现?为什么zset不使用红黑树作为其底层实现?为什么map不使用跳表作为其底层实现?
  9. 写道题吧:非递归求二叉树的高度?(需要写测试用例)
不得不说hr的效率是真的高,一天时间走完offer审批流程!

#小米面经##小米##C++工程师##社招##面经#
全部评论
给人面试官答疑呢🤣
3 回复
分享
发布于 2020-06-23 01:24
udp 没有connect过程吧? 应该是不需要进行链接的,这个问题楼主怎么答的?
2 回复
分享
发布于 2020-06-03 14:21
百信银行
校招火热招聘中
官网直投
感谢分享! 欢迎大佬参加我们的社招面经征集活动呀!有京东卡可以拿~社招面经征集|参加过社招的牛友,来发面经吧,拿京东卡~:https://www.nowcoder.com/discuss/374207 #社招面经#
1 回复
分享
发布于 2020-06-03 14:31
感觉社招比校招难好多,怎么都要问怎么实现的,如果了解不透彻,感觉不容易说清楚
1 回复
分享
发布于 2020-06-04 10:28
#社招面经# #小米Cpp面经# #Cpp面经# 👈点击话题查看更多同类面经干货!每日面经精选,为你发掘牛客干货!
点赞 回复
分享
发布于 2020-06-03 15:11
前辈面的小米c++主要是做啥的呀
点赞 回复
分享
发布于 2020-06-04 09:49
点赞 回复
分享
发布于 2020-06-11 21:49
楼主几年经验了?
点赞 回复
分享
发布于 2020-06-24 16:29
楼主面的是哪里的小米啊
点赞 回复
分享
发布于 2020-06-26 01:01
几年开发经验,问的这么详细么
点赞 回复
分享
发布于 2021-03-31 21:14
好牛啊
点赞 回复
分享
发布于 2023-10-09 11:11 北京

相关推荐

31 278 评论
分享
牛客网
牛客企业服务