1、main函数执行完毕后,是否可能会再执行一段代码?
答案:可以,可用_onexit 注册一个函数,它会在main()函数之后执行。
2、一个父类写了一个virtual 函数,如果子类覆盖它的函数不加virtual ,也能实现多态? 在子类的空间里,有没有父类的这个函数,或者父类的私有变量? (华为笔试题)
答案:只要基类在定义成员函数时已经声明了virtue关键字,在派生类实现的时候覆盖该函数时,virtue关键字可加可不加,不影响多态的实现。子类的空间里有父类的所有变量(static除外)。
3、算法复杂度
答案:算法复杂度分为时间复杂度和空间复杂度。其作用: 时间复杂度是指执行算法所需要的计算工作量;而空间复杂度是指执行这个算法所需要的内存空间。(算法的复杂性体现在运行该算法时的计算机所需资源的多少上,计算机资源最重要的是时间和空间(即寄存器)资源,因此复杂度分为时间和空间复杂度)。
4、堆栈溢出一般是由什么原因导致的?
答案:没有回收垃圾资源。
5、全局变量和局部变量在内存中是否有区别?如果有,是什么区别?
答案:全局变量储存在静态数据库,局部变量在堆栈。
6、冒泡排序算法的时间复杂度是什么?
答案:时间复杂度是O(n^2)。
7、 Internet采用哪种网络协议?该协议的主要层次结构?
答案:Tcp/Ip协议,主要层次结构为: 应用层