腾讯CPP后台一面面经

下面是大概的知识点,问了看什么书,平时怎么学习的,实习就不说了。
1、epoll服务器接口函数调用过程
相应接口:socket, bind, listen, epoll_create, epoll_ctrl, epoll_wait, accept
2、epoll ET LT的使用场景
ET LT的区别
3、什么时候产生EPOLLOUT事件,什么时候产生EPOLLINT事件
accept建立连接时客户端触发EPOLLOUT事件,服务端有新连接,可读,断开时EPOLLINT事件
4、UDP可以connect吗
可以
5、TCP状态机
客户端:SYN_SENT -> ESTABLISHED -> FIN_WAIT_1 -> FIN_WAIT_2 -> TIME_WAIT。
服务端:LISTEN -> SYN_RCVD -> ESTABLISHED -> CLOSE_WAIT -> LAST_ACK -> CLOSED。
6、TIME_WAITE出现在哪一端,作用。
主动断开那一端,作用:自己查一下吧
7、RST什么时候会出现
建立连接的SYN到达某端口,但是该端口上没有正在 监听的服务。
TCP收到了一个根本不存在的连接上的分节。
请求超时。 使用setsockopt的SO_RCVTIMEO选项设置recv的超时时间。接收数据超时时,会发送RST包。
8、进程间通信
管道、共享内存、消息队列、套接字、信号、信号量
9、fork的返回值,什么时候是子进程,什么时候是父进程
子:0  父:父pid
10、子进程怎么才能不继承父进程的句柄
exec函数族
11、STL六大部件
容器、算法、仿函数、迭代器、适配器、分配器
12、各个容器的使用场景
不一 一说了
13、vector的容量很大,怎么减小
swap( )临时vector对象
14、deque的底层实现
STL源码剖析
15、红黑树的特点
set,map的底层实现
每个节点或者是黑色,或者是红色
根节点为黑色
叶子节点(空节点)全为黑
如果一个节点为红色,它的子必须为黑
一个节点到最后的叶子节点每个路径中,黑节点数目相同
左子树和右子树高度差不超过2倍
查找时间复杂度logn
16、智能指针解决什么问题。怎么实现的。说说其构造函数,拷贝构造函数的实现
内在泄漏,维护一个指针和计数器
17、快排空间、时间复杂度
O(1)(递归logn~n),O(nlogn)
18、设计模式
常见的看一下
19、linux怎么查看内存占用、CPU占用、IO占用
free,top,iostat,vmstat,sar
20、前++,后++操作符重载,怎么区分
后++有参数
21、四种强制类型转换,特点
static_cast、const_cast、reinterpret_cast、dynamic_cast
22、const修饰符,成员变量,成员函数,静态对象
23、纯虚函数可以有函数体吗
可以,不可实例化
24、双向迭代器重载了哪些操作运算符
没有+,-,+=,-=
25、STL内存分配策略
STL源码剖析
#腾讯##面经##C++工程师##内推##秋招#
全部评论
不太懂网络,其他的还挺常规的吧
点赞 回复 分享
发布于 2018-08-04 23:29
是哪个事业群啊
点赞 回复 分享
发布于 2018-08-05 00:04
周六面的吗
点赞 回复 分享
发布于 2018-08-05 00:06
都是这么基础的问题?
点赞 回复 分享
发布于 2018-08-05 08:44

相关推荐

10-28 21:36
已编辑
北京航空航天大学 C++
面试官人很好,上来就介绍他们部门是深圳的,然后做的是iOS客户端,然后先问一下我的意见啊,没有问题,我说我刚面的也是字节的客户端然后我讲了我的一些项目,然后他就会问我项目的一些难点,编程代码中一些问题,然后那个对于图像分割语义处理的一些工作是怎么提高速度的?我说是硬件的问题围绕你的项目问一些问题多线程知道吗?多线程导致的问题知道吗?我讲了各种锁,然后他问你知道哪个锁更好用吗?更快速吗?tcp和udp。是什么层的协议?一次https的请求会是什么样子的?是什么层的协议?TCP udp适合什么场景?那网络传输中如果想要更快速,也想要安全,如何实现呢?我说udp加上序列号确认应答,流量控制等机制栈和堆是不是线程安全的?什么是TCP粘包现象?如何解决TCP粘包?我可能和滑动窗口搞混了,应该是关闭那个nagle算法手撕困难题,24点游戏。我说我不会,然后他帮我换了,直到换到第四题,有点像实现前缀树。我说我不会,他就不理我了,我太菜了,对不起,然后我就只能自己写埋头写,我发现那个题根本不难,是我想复杂了,然后我20分钟再捯饬前缀树,发现根本不用前缀树,我最后是用那个哈希集合和那个数组实现的,我参考了牛课上的最长公共前缀。他问我的时间复杂度和空间复杂度,然后我当时就说:时间复杂度上我用那个哈希集合可以加快搜索,但其实本质是暴力,最差情况下应该是on2,其实我应该说一下最快的情况下是o1,空间复杂度是on。腾讯为什么不出原题呢?为什么我看腾讯的很多面筋都一般都是原题啊?为什么一上来给我手撕个困难题?是不想要我吗?我太难了,我还是有几个软件著作权的,如果是手撕力扣hot100或者是牛客101的困难题,我都会。
腾讯一面1582人在聊 查看11道真题和解析
点赞 评论 收藏
分享
10-12 18:35
深圳大学 后端
小破站_程序员YT:go会更合适你。 java太卷,而且不需要你这个学历也能去。c++学历要求高,岗位也没有java多,对于技术的广度和深度要求会更高。go的话,一般学校教的概率没有java和c++普及,第一想去选择的人会少。还有就是go会比java轻量一点,和c++比又会更加成体系,会好学一些。 而且go也会比较吃学历,学历门槛比java又高一些,你的学历能有一些拉高门槛的作用。岗位也主要分布在一线城市。【个人观点,供你参考。】
点赞 评论 收藏
分享
评论
4
128
分享
牛客网
牛客企业服务