浙江大学计算机考研历年面试题集.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

浙江大学计算机考研

历年面试问题集

一、面向对象程序设计

1、多态和动态链接的区别

多态(Polymorphism)按字面的意思就是“多种形状”。多态性是允许你将父对

象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当

前赋值给它的子对象的特性以不同的方式运作(摘自“Delphi4编程技术内幕”)。

简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针

动态链接库(DynamicLinkLibrary,缩写为DLL)是一个可以被其它应用程序共

享的程序模块,其中封装了一些可以被共享的例程和资源。动态链接库文件与可执行

文件(exe)非常类似,区别在于DLL中虽然包含了可执行代码却不能单独执行,而

应由Windows应用程序直接或间接调用。动态链接是相对于静态链接而言的。所

谓静态链接是指把要调用的函数或者过程链接到可执行文件中,成为可执行文件的一

部分。换句话说,函数和过程的代码就在程序的exe文件中,该文件包含了运行时所

需的全部代码。当多个程序都调用相同函数时,内存中就会存在这个函数的多个拷贝,

这样就浪费了宝贵的内存资源。而动态链接所调用的函数代码并没有被拷贝到应用程

序的可执行文件中去,而是仅仅在其中加入了所调用函数的描述信息(往往是一些重

定位信息)。仅当应用程序被装入内存开始运行时,在Windows的管理下,才在应用

程序与相应的DLL之间建立链接关系。当要执行所调用DLL中的函数时,根据链接

产生的重定位信息,Windows才转去执行DLL中相应的函数代码。

2、解释面向对象里面的动态绑定

在面向对象语言中,可以从一个类派生出另一个类。派生出其它类的类称为基类,

又称为父类。被派生的类称为派生类,又称为子类。派生类可以具有父类的特性,共

享父类的成员函数,使用父类的成员,还可以定义自己的新特性,定义自己的数据成

员和成员函数。一个派生类可以从一个基类派生,也可以从多个基类派生。从一个基

类派生的继承称为单继承;从多个基类派生的继承称为多继承。

继承方式主要表示派生类继承基类时采用的继承方式,主要有三种,即公有继承、

私有继承、保护继承

动态绑定:如果一个基类(没有父类)含有虚函数,那么在编译时,编译器会生成一

张虚函数表,表里是该类中所有虚函数的地址(按出现顺序排列);并且会在该类中动

态的插入一个成员变量(__vfptr),它是一个指向这个虚函数表的指针。对于这个基类

的所有子类,编译器都会生成各自的虚函数表,并且把继承得来的__vfptr指针指向它。

静态绑定可以理解为在编译时知道了对象名,那么此时就可以访问相应的虚函数;而动

态绑定因为是用一个基类的指针来代表,不到运行的时候程序并不知道这个指针是指

向基类还是指向派生类,那么虚函数也就不确定了

3、虚拟机的好处、坏处、种类、最快的虚拟机

好处:虚拟机有很好的性能,有很好的可移植性。有利于测试,安全。

坏处:低效率

种类:有JVM,SableVM,IBM的VM,还有kissme..

最快的虚拟机:BEAJRockit

4、C++的特点

封装,继承,多态

支持面向对象编程和泛型编程

5、C++异常处理机制

抛出异常和捕捉异常;

c++的异常处理机制使得异常的引发和处理不必在同一函数中,这样低层的函数

可以着重解决具体问题,而不必过多的考虑对异常的处理,上层调用者可以在适当的

我位置设有对不同类型异常的处理

6、C/C++的区别

前者面向过程,后者既可面向过程,又可面向对象

后者是前者的超级

7、纯虚函数

简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,

用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分

离;用形象的语言来解释就是实现以共同的方法,但因个体差异而采用不同的策略

指向基类的指针在操作它的多态类对象时,会根据不同

文档评论(0)

139****2118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档