首页 > 京东C++开发正式批一二面面经
头像
Ctz
编辑于 2021-09-01 19:06
+ 关注

京东C++开发正式批一二面面经

提前批二面挂了,正式批再投一波东哥试试,面试体验很好,即使有答不上来的,面试官也会试图引导,目前在等HR面安排。
面的是京东零售的存储团队,Base北京,主要做分布式缓存系统,对网络要求比较高,要是了解分布式一致性算法(非必需)会更好。

之前提前批一二面的面经,参考:

京东C++开发一面面经(技术面,电话,30min)

1.C++

(1)指针数组和数组指针的区别?

(2)函数指针怎么定义?

(3)C++内存布局和每个区的作用?(栈区、堆区、全局区、常量区、代码区)

(4)栈的生长方向?(高地址向低地址方向生长)

(5)重载、重写、隐藏的区别?

(6)有继承关系的父类析构函数定义成virtual,为什么?(内存泄漏)

(7)如何对字符串string的operator=函数进行重载?(返回值string&,参数const string&,函数体判断自赋值情况,不是则深拷贝,返回*this)

(8)深拷贝用什么函数?(strcpy)

(9)strcpy会有什么问题?(可能字符串里面中间包含普通字符’\0’)

(10)那应该怎么解决?(memcpy)

2.网络

(1)I/O多路复用技术介绍下?(讲了select、poll、epoll底层数据结构、特点、以及区别)

(2)epoll水平模式和边缘模式使用时要注意什么?(边缘触发时缓冲区数据如果不一次性读完,不会再通知,因此要使用while循环读取缓冲区直到返回-1和EAGAIN来判断是否读完所有数据)

(3)不存在丢包,也不存在忙于读写的情况,netstat发现close-wait过多,原因是什么?(不会,有懂得大佬麻烦告诉我一下)

(4)如果不想通过四次挥手直接关闭连接,怎么做?(设置SO_LINGER,l_onoff=1,l_linger=0,调用close函数时,会发送RST报文强制结束连接)

3.代码

口述二分查找

mid=(left+right)/2会出现什么问题?怎么解决?(left+right可能溢出,可以改成left + ((right-left) >> 1))
4.反问

京东C++开发二面面经(技术面,电话,40min)

1.项目介绍

简单的问了几个问题

2.操作系统

(1)I/O多路复用技术有哪些?

(2)什么是线程安全?

(3)epoll_ctl是线程安全的吗?

(4)vmstat命令了解吗?

(5)vim里面查找一个字符?

(6)虚拟内存介绍下?

3.反问

更多模拟面试

全部评论

(8) 回帖
加载中...
话题 回帖