通过了面试,7月17号上课,到10月份
笔试
面试完才写的,笔试有点记不清了。。。
10道单选题
我记得全是考的C++,重载类型那一个违法,基本语法,考了三四道继承(函数输出顺序),常量指针和指针常量,还有个C++编译规则和代码规则
10道图形学很多(6道差不多)
图形学fov角、C++构造函数(不是简单的那种,文字性底层原理)、C++语法、渲染、C++继承
两道编程题
1.输入三个数组找三个数组中位数
2.金币游戏:定一个游戏轮数n,给每次游戏分m个金币,游戏当中如果能被3整除就怎么怎么样,能被2整除就怎么怎么样,都不能就减一,直到金币为0,输出每次游戏最少几轮玩完
面试
我从上一批面试的人那里获得一些面试内容
其他人:
C++特性:多态这些
虚函数、纯虚函数、虚表
内存泄漏、找内存泄漏、怎么内存管理
STL底层原理(和数据结构相关)
数据结构有问链表跳表,B树(2-3树这些),平衡二叉树
线程进程
unityGUI
项目
图形学
开始我是按照这些去准备的,但是。。我面试的时候基本没问到这些
1.C++
一开始是判断写两个类(base:A;son:B)之间的继承多态关系,字节个数
问了智能指针、共享指针、weak_ptr
智能指针和new的区别,最后智能指针什么时候自动释放内存
问了两道算法题说想法和优化方法:(1)翻转链表(2)给定未知长度链表,求倒数第n个
讲讲A*算法
讲讲贪心算法
讲讲四个cast类型
2.项目实践,我的没有问自己做的项目,问玩什么游戏,绝地求生中碰撞检测方法:我答的AABB和OBB,UE4有没有研究过源码