上来没让自我介绍,全程没问项目,没问八股,也没问算法。我中途觉得不对,问了一下面试官有我的简历么,对方说有,结果面试最后说不清楚我是不是计算机科班的,我简历第一行就写了我是计算机专业的,这明显是简历都没怎么看就直接来面了
面试全过程都在怼人,非常不舒服。而且问完问题后,也没有思路上的引导,只会在我提出一种想法后说“不对”,然后还让我不要顺着他的话说,要说自己的想法。提的都是实际开发场景中遇到的问题,我也没经历过,我不顺着你的话说,我天马行空么?
以下是问的问题:
(1)问在实际工程中,C++抛出异常之后怎么处理
我回答的通过返回值错误码,判断是哪种异常。面试官说实际工程项目中用模板开发,不会获取错误码,然后直接问我是不是都没用过模板,我说用的少
(2)问了一些模板的问题,我也没听懂,直接说不了解
(3)在线程池中,用到了哪些STL
我说了队列、链表。然后具体问怎么用的,我说我实际用的过程中是自己定义的类,问我为什么,我说线程池里用不到双向队列,普通的队列就够了,自己写更方便一些,然后又给我一顿怼
(4)线程上锁后,如果没解锁就走了,怎么判断这种异常情况
我回答可以尝试性加锁,类似检错锁,如果加不上锁,就说明之前有锁
(5)怎么判断没解锁就走了,是业务需要,还是异常情况
我直接问刚才不说这是种异常情况么,面试官说线程有占用资源的需要,我感觉他这问的前后矛盾。回答的是,项目设置一个超时时间,如果确实是正常的占用资源,会在超时时间内解锁。如果是异常的占用资源,其他线程都会被阻塞,就无法应答对方的请求,超过超时时间,就是异常情况。然后面试官说不对,为啥不对也没说,正确的思路是啥也没说
(6)类C继承自类A,类C继承自类B,类A和类B中有同名函数
我回答是成员函数名访问冲突,需要在调用函数时,在函数前加上类名和作用域限制符,说明是调用的哪个父类的函数。面试官的反馈是不对,然后问我会在编译时出错,还是会在运行时出错,我回答加上类名和作用域限制符后调函数不会出错,然后又说我不对
(7)接上一个问题,如果类A里的函数是虚函数,类B里的是普通函数
我回答如果有父类里有虚函数,子类继承后那个函数自动就是虚函数,不会是普通函数。问我为什么,我说虚函数会在对象存储布局的最前面有虚函数指针,也会被继承过来,然后说不对
最后的反问环节
(1)有什么需要改进的?
说我实际工程开发经验少(你们不是在招日常实习生么????)。然后说他问的问题,我更多是用自己的逻辑思路去回答的,说我不适合干程序员开发,更适合去辩论队打比赛(面试官原话,我可谢谢你啊!)。面试官说自己是计算机科班的,但不清楚我是不是(您但凡看一眼简历第一行,也不至于说出这话来。质疑专业这一点,侮辱性和攻击性拉满,甚至分不清他这么说是故意的,还是不小心)
(2)我直接问,确认一下这是实习生的面试吧。然后面试官说是,还问我有什么疑问么?没什么疑问,是我配不上贵司了
整体的面试感受,无论从生理还是心理上都非常不舒服,全程在被人训话的感觉,越聊越紧张,越聊越僵,我甚至感觉如果是在线下面试的话,可能真的会打起来。而且上来就要求我会写模板,有丰富的C++实际工程项目经验,能解决实际工程中的各种异常问题,一顿操作猛如虎,一看招的实习生。之后的校招应该也不会参加了,别人家面试最差就是浪费时间,他家的面试浪费生命