疯狂游戏C++一面

  • 1.自我介绍

  • 2.对做疯狂游戏感兴趣吗

  • 3.C++中有两个类A,B,B继承A类,A类有一个虚方法f(),B类也有一个方法f(),可以A *a=new B吗,反过来可以吗?

  • 4.用A类指针调用f()方法,用的是A的还是B的?这是什么特性?

  • 5.可以调用A的f()方法吗?怎么调用?

  • 6.虚函数实现原理。

  • 7.析构函数的作用,什么情况下必须定义。

  • 8.拷贝构造函数的作用。

  • 9.指针和引用的区别。

  • 10.堆和栈的区别。

  • 11.vector和map的区别。

  • 12.一堆对象,每个对象有一个时间(是有序的),每次修改后要求重新排序,怎么样才是最优的?(首先答了插入排序,后来说红黑树)

  • 13.红黑树的插入,查找的复杂度。

  • 14.排序算法有哪些?(这种情况下当仁不让把希尔排序拉出来)

  • 15.TCP和UDP区别

  • 16.有没有一种机制,可以保证udp可靠传输?(见过,不会)

  • 17.给你一堆资源和一些线程,怎么样保证不发生死锁。

  • 18.有没有一种简单的方法。

  • 19.后面聊天了,问了公司技术,面试官问我想不想做前端(狗头保命)