您的位置:首页 > 职场人生

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: