当前位置: 首页 > 面试经验 >

快手C++一面 2023-8-18

优质
小牛编辑
89浏览
2023-08-19

快手C++一面  2023-8-18

面试时间:一个小时

自我介绍1~2分钟

C++八股:

智能指针、智能指针的循环引用(两个智能指针指向的对象中的智能指针互相指向对方,导致两个对象不能正常析构,引起内存泄漏)、weak_ptr的作用(与shared_ptr配合使用,可以解决智能指针循环引用的问题)、shared_ptr是否是线程安全的(shared_ptr的引用计数是线程安全的,其指向的对象是需要加锁的);

虚函数的底层实现,多继承(一个派生类继承多个基类)的虚指针的虚表的形式;

map和set的区别和底层实现,map取值的find、[]、at方法的区别(at有越界检测功能)

操作系统:

进程和线程的区别;

不同进程之间是否可以共享内存?父子进程也不可以吗?(读时共享,写时拷贝)

进程之间的通讯方式;

软链接和硬链接的区别(软链接文件与源文件的inode号不同,类似与源文件的快捷方式;硬链接的inode号与源文件相同,相当于源文件的另一个文件名);

项目:

epoll和poll、select的区别;

proactor和reactor的区别;为什么选用proactor模式(被问住了。。。);

项目中使用了哪些api,详细说说setsocketopt和fcntl的作用;

epoll的LT模式和ET模式的区别;

定时检测非活动连接的功能是怎么实现的;

手撕:最大子数组和(动态规划)

最后又问了下左值和右值

Over

 类似资料: