2014.12面试总结
2015-01-19 21:41
141 查看
之前换工作,总是骑驴找马,所以面试的公司不多,因为面试是需要请假的。今年12月,由于自己突然被裁掉,因此时间比较充裕,面试了10几家公司,下面谈谈面试的心得与体会。
关于技术面试,由于本人经验比较丰富了,不少公司都没有笔试了。技术面试的内容大概包括以下知识点:
1, 编程语言基础。以C++为例,主要涉及
OOP的三特征:封装,继承,多态
构造函数与析构函数:调用顺序,拷贝构造函数。深拷贝和浅拷贝等。
运算符的重载,包括单目和双目和友员函数的使用。
运算符的隐形转换,如int+unsigned int时,int 自动转换为unsigned int后再进行计算。
指针:const 指针,指向const 数据的指针,数组指针,指针数组,函数指针等。
泛型编程,理解C++对泛型编程的实现。如C++泛型和C#泛型的区别?动态库能否引出泛型函数或类?
理解C++类在内存中的布局。包括C++多态的实现:虚函数表,static 存储在哪?非虚函数地址在哪?
STL,boost库的使用及实现原理。
COM编程,ATL和MFC对com的支持。
C++和C#的互操作。
2,操作系统
线程和进程,各种内核对象。
内存问题:栈,堆,全局存储区等。内存大小端、内存对齐问题。
线程同步问题:互斥量,信号量,读写锁等
进程间通信:共享内存,管道,文件,socket及跨进程的内核对象。
PE文件的格式及如何被执行
3,网络编程
了解TCP/IP协议的格式,特点,握手过程。
Socket编程的基本函数。
网络编程的模型:select/poll, epoll,IO完成端口
TCP的半关闭问题。
4,数据结构与算法
链表,堆栈,队列,map,set,hash表,二叉树,二叉搜索树及各种变形和图。
各种排序算法的实现,时间和空间复杂度,是否稳定等
树的深度遍历和层序遍历
算法设计思想的掌握,包括分治、贪心、回溯和动态规划。掌握这些算法的经典问题。
5,OO Design 问题,参照HeadFirst—DesignPattern
关于技术面试,由于本人经验比较丰富了,不少公司都没有笔试了。技术面试的内容大概包括以下知识点:
1, 编程语言基础。以C++为例,主要涉及
OOP的三特征:封装,继承,多态
构造函数与析构函数:调用顺序,拷贝构造函数。深拷贝和浅拷贝等。
运算符的重载,包括单目和双目和友员函数的使用。
运算符的隐形转换,如int+unsigned int时,int 自动转换为unsigned int后再进行计算。
指针:const 指针,指向const 数据的指针,数组指针,指针数组,函数指针等。
泛型编程,理解C++对泛型编程的实现。如C++泛型和C#泛型的区别?动态库能否引出泛型函数或类?
理解C++类在内存中的布局。包括C++多态的实现:虚函数表,static 存储在哪?非虚函数地址在哪?
STL,boost库的使用及实现原理。
COM编程,ATL和MFC对com的支持。
C++和C#的互操作。
2,操作系统
线程和进程,各种内核对象。
内存问题:栈,堆,全局存储区等。内存大小端、内存对齐问题。
线程同步问题:互斥量,信号量,读写锁等
进程间通信:共享内存,管道,文件,socket及跨进程的内核对象。
PE文件的格式及如何被执行
3,网络编程
了解TCP/IP协议的格式,特点,握手过程。
Socket编程的基本函数。
网络编程的模型:select/poll, epoll,IO完成端口
TCP的半关闭问题。
4,数据结构与算法
链表,堆栈,队列,map,set,hash表,二叉树,二叉搜索树及各种变形和图。
各种排序算法的实现,时间和空间复杂度,是否稳定等
树的深度遍历和层序遍历
算法设计思想的掌握,包括分治、贪心、回溯和动态规划。掌握这些算法的经典问题。
5,OO Design 问题,参照HeadFirst—DesignPattern
相关文章推荐