因为是一面,所以相对来说都是很基础的东西,先记录下,回头再补充~
回顾的不是很全,大致内容如下:(不分先后)
1、项目中遇到的难题,以及怎么解决的(个人发挥~)
2、单链表反转
3、多态的实现以及原理
在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就调用基类的函数。(后边的自己补充说明即可)
https://www.cnblogs.com/cxq0017/p/6074247.html 仅供参考
4、创建文件的Windows API,失败时返回值是什么
CreateFile,INVALID_HANDLE_VALUE
5、TCP、UDP的大概区别
基于连接与无连接;
对系统资源的要求(TCP较多,UDP少);
UDP程序结构较简单;
流模式与数据报模式 ;
TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。
6、C++常用网络库
ACE、BOOST的ASIO库
7、线程间同步有哪些方式
临界区、事件、信号量、互斥量
8、临界区的使用方法
InitializeCriticalSection
EnterCriticalSection
LeaveCriticalSection
DeleteCriticalSection
9、用过哪些STL容器,vector与list的区别,分别是怎么插入的等
10、常用调试方法和调试工具
11、常用工具(spy++、procexp等)
12、动态库加载的方式以及对应的区别
13、用宏定义一个计算数组大小的函数
14、extern “C”的作用
15、怎么用类封装接口
16、map的实现原理
17、libcurl的使用
18、mfc双缓冲
19、duilib与mfc的区别
20、简述mfc的消息循环过程
21、写一个类的构造、析构、拷贝构造、拷贝赋值函数
22、strcpy越界拷贝的后果以及更好的替代方式
23、虚析构的作用
24、虚表相关知识
25、你所知道的一些C++11特性
26、lamda引用传参的作用
总结:
虽然只有几个没答上来,不过最后还是已经凉凉~估计是算法太弱的缘故,也可能是别的原因吧~
仅供参考给即将去面试的小伙伴~