多态与虚函数 练习题.docVIP

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

多态与虚函数练习 选择题 单选题 1.  要实现动态多态性,可以通过( )调用虚函数。 A. 基类指针 B. 成员名限定 C. 对象名 D. 派生类名 2.  以下( )成员函数表示纯虚函数。 A. virtual int vf(int); B. void vf(int)=0; C. virtual void vf()=0; D. virtual void vf(int) { }; 3.  关于纯虚函数和抽象类的描述中,错误的是( )。 A. 纯虚函数是一种特殊的虚函数,它没有具体的实现 B. 抽象类是指具有纯虚函数的类 C. 一个基类中说明有纯虚函数,该基类派生类一定不再是抽象类 D. 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出 4.  下面4个选项中,( )是用来声明虚函数的。 A. virtual B. public C. using D. false 5.  下列关于动态联编的描述中,错误的是()。 A. 动态联编是以虚函数为基础 B. 动态联编是运行时确定所调用的函数代码的 C. 动态联编调用函数操作是指向对象的指针或对象引用 D. 动态联编是在编译时确定操作函数的 6.  关于虚函数的描述中,( )是正确的。 A. 虚函数是一个静态成员函数 B. 虚函数是一个非成员函数 C. 虚函数既可以在函数说明时定义,也可以在函数实现时定义 D. 派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型 7.  下面关于友元的描述中,错误的是( )。 A. 友元函数可以访问该类的私有数据成员 B. 一个类的友元类中的成员函数都是这个类的友元函数 C. 友元可以提高程序的运行效率 D. 类与类之间的友元关系可以继承 8.  下面描述中,正确的是(  )。 A. virtual可以用来声明虚函数 B. 含有纯虚函数的类是不可以用来创建对象的,因为它是虚基类 C. 即使基类的构造函数没有参数,派生类也必须建立构造函数 D. 静态数据成员可以通过成员初始化列表来初始化 9.  如果一个类至少有一个纯虚函数,那么就称该类为(   ) A. 抽象类 B. 虚函数 C. 派生类 D. 以上都不对 10.  下列描述中,( )是抽象类的特征。 A. 可以说明纯虚函数 B. 可以说明虚函数 C. 可以定义友元函数 D. 可以说明其对象 11.  编译时的多态性可以通过使用( )获得。 A. 虚函数和指针 B. 重载函数 C. 虚函数和对象 D. 虚函数和引用 12.  关于虚函数的描述中,正确的是()。 A. 虚函数是一个静态成员函数 B. 虚函数是一个非成员函数 C. 虚函数即可以在函数说明定义,也可以在函数实现时定义 D. 派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型 13.  下述静态成员的特性中,( )是错误的。 A. 静态成员函数不能利用this指针 B. 静态数据成员要在类体外进行初始化 C. 引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符 D. 静态数据成员不是所有对象所共有的 14.  下列运算符中,( )运算符在C++中不能重载。 A. ?: B. [] C. new D. 分析程序的运行结果 1.#includeiostream.h class B { public: B(int i){ b=i+50;show;} B(){ } virtual void show() { coutB::show() called. bendl; } protected: int b; }; class D: public B { public: D(int i){ d=i+100; show(); } D(){ } void show() { cout D::show() called.dendl; } protected: int d;

您可能关注的文档

文档评论(0)

xingkongwd + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档