一 C++基础知识点(必会)
1.虚函数/纯虚函数
2.虚析构函数
3.线程池
4.继承(继承是面向对象复用手段,共享共有的东西,实现各自本质不同的东西)
5.C++特性(封装,继承,多态),多态虚函数表
6.堆栈,内存管理的理解、内存对齐
7.指针/引用/深拷贝/浅拷贝/智能指针
8.对象/成员函数/内联函数
9.模板/IO流/异常
10.常用的数据结构(vector,list,map)区别以及底层实现
11.C/C++常用的算法以及线程池,多线程,qt的控件,常用的设计模式(mvp)
12.C/C++设计模式(单例模式/观察者模式)
13.数据结构(单链表/双链表/队列/栈/矩阵/广义表/二叉树/哈夫曼树/位图/图/迪杰特斯拉算法/广度优先搜索)
14.整理和熟悉常用的Linux指令/熟悉Linux环境搭建(vim/makefile/gdb),常用的shell脚本/Linux数据库
15.svn/git的使用
16.对Qt控件的使用(多线程/网络编程)界面绘制
17.熟悉Linux/Windows中API
18.osg(开源三维引擎,采用C++/OpenGL编写,可在Windows/Linux下),OpenGL(开放图形库,用于渲染2D/3D图形的跨语言/平台API)
19.理解Qt底层机制(元对象,信号槽机制)
20.编程习惯(命名规范)
21.程序编译过程理解(编译过程/生成文件过程)
22.工作中比价难忘的问题??出现问题怎么解决??处理中没法推进怎么办??对公司有什么了解?为什么选择我们公司??
**
二 常见面试知识点
**
1.深拷贝和浅拷贝区别
浅拷贝:只是对对象的指针进行拷贝,并没有重新分