1、上来先做了五个填空选择题,一道算组合数的题,一道链表插入,两道C ++虚函数相关的题,最后是一个算加密的。时间差不多二十多分钟,后来也没做完,就继续问下去了。
2、问项目 问了问怎么实现UI 怎么实现关闭一个页面同时关掉其他页面 怎么关闭页面后同时回到上一个页面
3、结构体和类的区别
4、协程原理
狂问八股就对了,问的八股都挺常规的,有的很简单的不太记得了
1、C#:说说面向对象、了解委托吗
2、操作系统:进程线程的区别、进程间通信
3、计网:三次握手四次挥手
4、数据结构:树的遍历方式、图的遍历、图优化的遍历方式(dijkstra什么的)、A*算法
5、图形学:懂向量和矩阵吗、怎么判断一条射线是否与球相交 项目里怎么判断子弹碰到了物体、mipmap了解吗、drawcall了解吗、怎么减少drawcall(就图集打包那些)后来答得不太好就不问了
6、计算机系统:浮点数的存储、逻辑移位和算术移位、函数调用的过程、程序编译过程、怎么存储负数,怎么表示-1
7、C++:很意外没考多少。讲一下new和delete、new 和 malloc的区别、左值右值、强制转化类型、智能指针
8、手撕string类:问了一下用C++熟还是C#熟,我选的C++。实现构造函数、拷贝构造、拷贝复制、析构函数、移动构造。最后有一个小应用,怎么把左值变为右值,std::move() 即可
面试官人非常非常好!在思考的时候会尽量讲清楚背景,之后还会发表自己的看法。
问项目就问了快半个小时吧。中间穿插着问了一些应用。
怎么实现人物的拖拽,用了哪些组件。
怎么实现无限循环列表。
Monobehavior的生命周期。大概答了一下,着重问了几个。问了lateupdate里会用来干什么,举一个例子,我说的相机跟随,为什么要在lateupdate里才实现相机跟随。我答的因为lateupdate在之后调用,不会造成拍不到人物的现象。
脚本调用顺序。一个物体挂多个脚本的执行顺序,一个脚本绑定在多个物体上会怎样,是否在unity里改变过脚本顺序(Edit -> Project Settings -> Script Execution Order改)
最后是个开放题,也挺常见的。怎么实现排行榜。要求前100名非常精准,后面的排名不要求非常精准,给出在百分之几即可。桶排序里面再分桶。
虽然但是,聊了十分钟hr才发现我25年毕业,一直以为我是24届的。
平时玩什么类型游戏,有没有玩过雷火游戏
逆水寒玩的什么角色,战力多少
有没有玩过别家的游戏
为什么玩那个游戏,是为了求职吗
平时是怎么学习的
职业规划是什么
来杭州家里同意吗