之前看了网上很多7k7k面试的帖子,于是觉得7k7k会考概念性的东西比较多,但其实,他们考察的实践性的知识也会很多。
前几天论文答辩,答辩完成之后又提交各种文件,然后就发现真的是几天不上手就会很生疏。
7k7k的面试官做的功课真的很多,他提问是还透露了 一下来我的博客看了一下,提问也都是简历上的一些知识。
首先是上来的自我介绍,然后我提了一句自己偏向与C++,因为不喜欢Java和Python的内存回收机制。然后就被问比较C++和Java的内存回收机制。QAQ,我真的只是单纯的不喜欢Java内存回收机制这种以释放内存为目的的占用内存的的现象。当时一分析就露馅了,其实可以说一下JavaGC的,但是完全想不起来了。现在想想,可以直接介绍一下C++的内存分配情况(栈、堆、静态存储区、自由存储区、常量区),总比这样单纯的个人偏好要好。
然后,就是几个简单的C++代码结果题目。代码实现就一个单例设计模式。还有一个STL,容器删除内容,现在回看代码迭代器忘记itr++了,怪不得当时面试官有提示没有迭代到下一个,当时真的是太紧张了。其中知识点最深的有虚函数的存在,但是微信真的是太不好用了,看这两个类真的看错了。我以为所有的函数都被重写了,结果没有。还有一个判断循环退出的问题比较有意思,for(unsigned int i = arr[].size -1;i--;i<0),其中第三条i<0直接没有用处,忽略就好,其实这个判断是当arr[].size的函数为0的情况下,直接是负值,C++所有非0的情况都是true,会直接报错这个我和其他的语言弄混了,我记得有一个是负值返回false的。
然后就是SQL数据库了,考察的是一个很简单的统计不重复个数的问题,面试官提示了一个count,我自己想起来一个distinct,结果,太久不用直接写错了,当然也有一直在之前一直在(Select* from where) 脱离这个模式一下就想不起来了。真的是太久没用了,都不熟悉了。的原因也是因为SQL语句简单明了,一目了然,所以觉得自己很会,没有复习的缘故。然而现在再看一下具体语法就都想起来了,面试前该再看一眼的。
总结:
7k7k的面试官态度真的很认真的,他会在面试前认真看简历,做很大量的准备工作去了解你,所以,简历里面的东西也一定要好好准备,不要相信网上的那种面试前不看简历的谣言了。
真的希望能够进入二面。