2010 面向对象温习(国外英文资料).docVIP

  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文档。上传文档
查看更多
2010 面向对象温习(国外英文资料)

一.填空。 1. C++源程序文件的扩展名为( ) 2. class有3中访问权限,分别为( ),( ),( ) 3.已知下面的类层次结构,每个类 都定义了自己的缺省构造函数: //说明:...处定义了每个类的构造函数 //方便起见一律省略 class A{...}; class B:public A{...}; class C:public B{...}; class X{...}; class Y{...}; classZ:public X,public Y{...}; class MI:public C,public Z{...}; 下面的定义引起的构造函数调用顺序是什么? MI mi; 在 5.string str; cin str; 输入 abcd def(换行) str内容是什么? 6.面向对象程序设计语言的三大特性是:封装性、继承性和( ) 7.C++中关键字inline用于定义( )函数。 8.C++中关键字friend用于定义( )函数。 9.联编是指一个计算机程序自身彼此关联的过程,根据联编所进行的阶段不同, 可分为两种不同的联编方法:动态联编和静态联编, 前者是指联编工作出现在( ),后者是在编译时进行联编工作。 10.为了实现类间的代码重用,可以使用组合机制和( 继承 )机制, 组合机制表示的是has-a关系,而后者则表示的是( is-a )关系。 二.选择。 2.已知下列类层次结构,它们都定义了 缺省的构造函数: class X{}; class A{}; class B:public A{}; class C:private B{}; class D:public X,public C{}; 则下列哪些转换是不允许的? D* pd = new D; a)X* px=pd; b)B* pb=pd; c)A* pa=pd; d)C* pc=pd; 3.下面模板类的定义中,哪些是错误的? a) templateclass T,U class Container1{}; b) templateclass mT,typename mT class Container2{}; c) templateclass mT=int class Container3{}; a, templateclass T,typename U class Container1{}; b. 其中mT重复了 三.阅读程序。 1.以下程序是否有错误?请改正。 改正后输出是什么? #include iostream using namespace std; class A{ public: A(){ cout A endl; } }; class B{ public: B(int x){ cout B endl; } }; class C{ A a; B b; public: C(int y){ } }; int main(){ C c(3); } 改成public: C(int y):b(y){ 2.下面程序中的输出是什么, 说明原因. #include iostream using namespace std; class A{ public: void doit(){coutA::doitendl;} }; class B:public A{ public: void doit(){coutB::doitendl;} }; int main(){ B b; A* p=b; b.doit(); p-doit(); } 3.下面程序的输出是什么, 说明原因. #include iostream using namespace std; class A{ public: virtual void doit(){coutA::doitendl;} }; class B:public A{ public: void doit(){coutB::doitendl;} }; void f(A a){a.doit();} int main(){ B b; f(b); } 4.下面程序的输出是什么, 说明原因. #include iostream using namespace std; class A{ public: A(){ doit1(); doit2(); } virtual void doit1()=0; virtual void doit2()=0; }; class B:public A{ public: void doit1(){coutB:

文档评论(0)

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

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

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档