2017百度软研(C++)
问了很多,不过很多也都没有问到,感觉有点偏,很深入的东西,越问越虚。第一次实习面试从百度开始,也从百度结束吧。看得见的差距,不想将就,所以还是拿最后一次机会去尝试。win or go home, 所以虽然心态又一次崩了,但是已经没有遗憾了。未来的路还很长,慢慢打好基础,来日方长。
1. 纯虚函数、虚函数,两者的区别, 各自的用途
2. 多态
3. 指针常量、常量指针
4. 虚表的实现,虚表放在哪个位置
1.虚函数表是全局共享的元素,即全局仅有一个.
2.虚函数表类似一个数组,类对象中存储vptr指针,指向虚函数表.即虚函数表不是函数,不是程序代码,不肯能存储在代码段.
3.虚函数表存储虚函数的地址,即虚函数表的元素是指向类成员函数的指针,而类中虚函数的个数在编译时期可以确定,即虚函数表的大小可以确定,即大小是在编译时 期确定的,不必动态分配内存空间存储虚函数表,所以不再堆中.
根据以上特征,虚函数表类似于类中静态成员变量.静态成员变量也是全局共享,大小确定.
所以我推测虚函数表和静态成员变量一样,存放在全局数据区.
c/c++程序所占用的内存一共分为五种:
栈区,堆区,程序代码区,全局数据区(静态区),文字常量区. 显而易见,虚函数表存放在全局数据区.
5. linux下通过端口查找进程占用的磁盘?
6. 计算机网中tcp/ip模型。答成五层模型了。对应的协议,三次握手,四次挥手,为什么多一次挥手,拥塞控制机制,(问的很细),cookie,session的问题,
网络层和传输层怎么交互的,tcp中怎么发送数据的,怎么控制发送的顺序,
7. 二叉树的遍历方式,中序遍历的非递归思路
8. 编程:翻转一个字符句子中 的单词,优化?
9. 没问数据库?
10. 分页和分段的优缺点
11. 单例模式的应用场景,注意哪几点?没答好
12. 有没有接触过大型的开源项目
13. 有些忘了,待更、、、