第一次电话面试
1.聊了聊平时的学习方式和学过哪些计算机课程。
2.C++面向对象:
2.1.在继承中,如果子类中有一个和父类中重名的成员,那么如何访问父类成员?
2.2.三角转四角虚继承的问题,解决数据冗余和成员二义性。
2.3.如果A,B是别人封装好了的两个类(库的形式,看不到源码),已知它们中有一个同名的成员。现在用它们来自定义一个类C,如果不用继承的方式,如何解决这个成员名字冲突的问题?
2.4.面向对象的三大特性,和七大原则。
- 多态和多态原理。
- 依赖倒置原则:实现尽量依赖于抽象,而不依赖于具体实现。面向接口编程。
第二次电话面试
1.对阿里巴巴高德地图的认识?
2.C++基础
-
new和malloc有什么区别?
-
delete[ ]能够释放连续的空间,你认为它底层是如何实现的?如果给它一个数据结构的话,你认为是什么?
-
面向对象的三大特性?介绍一下多态?
-
STL中的vector和list有什么区别?
-
冒泡排序的思想和实现
-
一个单向链表,只知道头指针,如何快速的查找到中间的节点?
-
如果有一个char型的字符数组,如何计算每个字符出现的次数?只要求时间复杂度最低。
-
C++中的引用,何时使用引用?
-
浅拷贝带来的重析构问题,使用智能指针能够避免吗?
3.你有什么要问的?