自我介绍 然后各种拷打项目,一些具体的内容比较个人化就不说了1.项目中用到protobuf,protobuf序列化后的底层数据格式是什么样(二进制格式,字段标识,长度前缀等等)2.muduo网络库底层处理I/O连接用到的接口(不知道他想问我epoll还是muduo中的那些具体组件,我回答了epoll)附muduo库的底层组件:EventLoop:事件循环,负责事件的分发和调度。Channel:通道,负责事件的注册、响应和分发。Poller:多路复用器,用于监听文件描述符上的事件。Socket:套接字操作相关的接口,包括创建、绑定、连接等。Acceptor:接受器,用于接受新的客户端连接。TcpConnection:TCP连接对象,表示一个TCP连接,并提供相关的操作接口。3.epoll内的数据结构(红黑树,双链表)4.epoll_ctl5.C++中有什么容器查询时间复杂度是O(1)6.map是什么结构7.map各种操作的时间复杂度8.unordered_map的底层结构9.算法题:不断输入字符直至终止符(用getchar ()!= EOF,因为要求空格也算字符),将这些字符去重并逆序数出。题目很简单,但面试官要求最低的空间开辟和时间消耗。我是用string+unorderd_map做的,面试官给出条件ASCII码代表128个字符,问我unorderd_map开辟的内存大小是多少(不知道),该怎么优化(开一个128个容量的vector?)