网易游戏研发工程师一面面试题总结
-
inline关键字是做什么用的?具体说说?inline关键字在什么情况下会展开失败? sizeof一个空类是多大?为什么?编译器为什么这么做? 在这个类中添加一个virtual函数后再sizeof,这时是多大?为什么? 将这个类再virtual继承一个其它的空类,这是多大?为什么? 类里有哪几种权限,分别说明? class A:class B{},A是私有继承还是私有继承?私有继承是做什么用的? struct S { chara; intb; staticlong c; } sizeof(S)是多少?为什么?有什么好处? 子类的virtual函数中能不能调用父类的virtual函数,为什么? 有纯虚函数的类能不能实例化? C++多态有哪几种? C++是怎么实现动态多态的? 简要说说C++的静态多态? C++编译后的函数符号的C语言编译后的函数符号有哪些区别?为什么? C++智能指针有哪些?auto_ptr和shared_ptr有什么区别?他们有什么作用? 有序vector和list二分查找的时间复杂度是多少? vector自动扩容是按什么大小进行的? 图的搜索有哪几种方式?广搜要怎么做?需要什么额外空间吗? 给定一个迷宫部分坐标是无法通过,求某两点间最短路径? 简述Dijkstra算法的过程,描述一下A Star算法? 找出一个无序数组中大小后K个数据? Set的底层实现是什么?红黑树是做什么用的?额外开销是多少? 程序有哪几种链接方式?分别说明区别?哪种效率高?如果一个动态库没有.lib与头文件,要怎么使用里面的函数? 线程和进程的区别? 线程使用共享资源会出现什么问题?需要怎么做? 如何进行线程同步?在Windows下举例?分用户模式下同步和内核模式下同步讨论? 堆和栈的区别? 线程死锁的几个条件是什么? 给定两个线程,A,B两个锁,举个造成死锁的例子? TCP和UDP的区别?分别举例他们的上层协议? 你用过哪些设计模式? 工厂方法和抽象工厂有哪些区别? 进程间通信有哪几种方式?在特定环境(比如两程序需要共享一个文本)下哪种效率最高?Windows下如何进行内存共享? 给定一千亿个数据,要求找出其中最大的一个值,内存只有1G? 给定一千个数据,里面有的数据有重复,要求设计一个算法删除重复数据?要求尽量快?
