阿里面试一面(凉经)
阿里一面(电话面) 2019.08.19 14.25-15.50 凉
- 自我介绍
- 深挖项目(阿里面试官确实厉害,给我发现了俩问题,后边一个没怎么讲出为什么)
- 为啥不用现成的框架,logstash、splunk(我......只能说了说)
- class A是一个空类,它里面有什么方法
- 上边讲到了移动拷贝和移动赋值,讲讲
- 多态的形式
- 虚函数实现机制
- 父类的析构函数是否应该是虚函数,为什么
- 写过多线程程序吧,讲讲线程间同步的方法吧
- dynamic_cast与static_cast区别
- class A类型的指针,此时通过dynamic_cast转换为class B类型的指针,会出现什么问题,是否能通过编译,或者是否能运行(说是不能,但是编译错误还是运行错误不确定)
- 都用过哪些智能指针,shared_ptr与unique_ptr有啥区别
- shared_ptr是线程安全的吗,为什么
- 有哪几种锁
- 了解<atomic>吗,底层是怎么实现的
- 了解TS指令吗(不知道,后来发现其实我看过,但是忘了,pdd面试时候我还说过有一种硬件的原子化指令,但不知道叫啥,后来也没看……)
- map是用来干啥的,底层数据结构是啥
- STL用过吧,讲讲都用过啥
- vector动态扩容讲讲
- resize()与reserve()区别
- 我现在循环往一个vector里面插入10000个数据,一次插入一个,怎么高效,用resize()还是reserve(),为什么
- 迭代器什么时候会失效,哪些容器什么情况下会失效
- map迭代器会失效吗,为什么
- sleep()与wait()区别(只讲了wait,后来看了看居然是个Java的,我一开始以为是问的signal()与wait())
- 手撕代码,给定一个无序整数数组,输出排序后每个元素对应的下标。 注意:元素可能存在重复,如果重复则下标相同。(血崩,本以为这个题肯定有巧妙办法去实现,再就是着急写完,因为深信服约的面试时间就开始了,不可能直接进行sort,想用bitmap去写,写完之后,发现思路根本不对,当时就崩了,脑子蒙了)
总结:
有些问题可能忘了,连着面试的深信服,吃完饭回来回想的。
首先不得不承认,阿里面试官确实技术厉害,项目中的问题,一眼就能给你发现。
基础部分从潜开始问,逐渐深入,基本都回答上来了,但是感觉面试官很严肃,感觉态度就是我非要问到一个你不会的,他才满意。
手撕代码直接血崩,得出一个经验:别想那么多,先思考暴力方法,别一上来就思考最优的。
面试完难受的一笔,还要连着面深信服,约好的14.00开始面试,14.25才开始,一直到了15.50,最后深信服那边都催了,难受。
我tm真是个菜鸡,哎,努力!奋斗!
#阿里巴巴##面经##秋招##内推##C++工程师#