非科班菜鸡的秋招之路(七) 哲库一面
8.16 上午十点 50min
好像面试流程跟看的面经都不太不一样
无自我介绍,无项目问题,无计网、操作系统、数据库等知识
全程C++基础,从基本语法、到面向对象、内存、C++11新特性、STL等挨个问了个遍(感觉被问了个底朝天~,基础还是不太牢固)
忘记录音了,根据记忆记录一下
1.指针和引用的区别
2.C++内存模型
3.new和malloc区别,new的底层实现
4.static修饰的成员放在哪个区,static的用法和作用
5.define和const的区别,const的用法
6.C++中struct和class的区别
7.内联函数
8.面向对象的三大特性,分别介绍
9.纯虚函数是什么,含有纯虚函数的类能不能实例化,虚函数的实现原理,构造函数可不可以是虚函数,析构函数可不可以是虚函数,子类继承父类之后自己的虚函数存放在哪里,多继承情况下子类继承多个虚函数表还是一个虚函数表,虚函数表除了存放函数地址还存放什么
10.C++的强制类型转换
11.函数指针是什么
12.模板函数的调用是不是重载
13.回调函数的作用
14.右值引用
15.空类的大小
16.智能指针的原理,用过哪些智能指针,每个智能指针的作用
17.lamda表达式是不是函数
18.C++允许在函数内重新定义函数吗
19.STL六大组件有哪些
20.vector、list、deque、map的底层实现
21.vector怎样维护底层数组,map为什么要用红黑树不用二叉搜索树来实现
22.迭代器是什么,vector中为什么还要提供迭代器,迭代器失效的情况
23.仿函数是什么
24.多线程用过吗,什么是死锁
25.介绍一下典型的锁
暂时想到这么多,后续等想到再更
手撕代码:旋转数组的最小值 时间复杂度:O(logn)
基本全程都在问一些基础问题,面试官人很好很和蔼,有些问题确实回答的不太好,最后建议我还是要多注重基础
加油吧