您好,欢迎访问三七文档
三章1、________不是面向对象系统所包含的要素。A重载B对象C类D继承2、________的功能是对对象进行初始化。A析构函数B数据成员C构造函数D静态成员函数3、在下列关键字中,用以说明类中私有成员的是________。ApublicBprivateCprotectedDfriend4、C++对C语言作了很多改进,下列描述()使得C语言发生了质变,即从面向过程变成面向对象。A增加一些新的运算符B允许函数重载,并允许设置默认参数C规定函数说明必须用原型D引进了类和对象的概念5、面向对象程序设计将数据与________放在一起,作为一个相互依存、不可分割的整体来处理。A对数据的操作B信息C数据隐藏D.数据抽象6、已知f1(int)是类A的公有成员函数,p是指向成员函数f1()的指针,采用_____是正确的。Ap=&f1Bp=&A::f1Cp=&A::f1()Dp=&f1()7、在说明:constchar*ptr;中,ptr应该是________。A指向字符常量的指针B指向字符的常量指针C指向字符串常量的指针D指向字符串的常量指针判断:1、空类就是没有名字的类。12、面向对象系统的封装性是一种信息隐藏技术,目的在于将对象的使用者与设计者分开,使用者不必知道对象行为实现的细节,只需用设计者提供的协议命令对象去做即可。03、引用类型和指针类型作为函数的形式参数时,对调用函数的实际参数的要求是一样的,均是地址。04、对象数组在创建时要求构造函数不能有任何参数。11.________是一个类的多个对象共享的。A公有数据成员B私有数据成员C保护数据成员D静态数据成员2.下列静态数据成员的特性中,______是错误的.A)说明静态数据成员时前边要加关键字static来修饰B)静态数据成员在类体外进行初始化C)引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符D)静态数据成员不是所有对象所共有的3.静态成员的值对每个对象都是一样的,它的值是可以更新的。(0)4.由于数据隐藏的需要,静态数据成员通常被说明为()A)私有的B)公有的C保护的D)不可访问的5.下面对静态数据成员的描述中,正确的是()A)静态数据成员是类的所有对象共享的数据B)类的每个对象都有自己的静态数据成员C)类的不同对象有不同的静态数据成员值D)静态数据成员不能通过类的对象调用6.静态成员遵循类的其他成员所遵循的访问限制,除了()A)静态成员函数B)静态数据成员初始化C)私有静态数据成员D)公有静态成员函数7、#includeiostream.hclassSample{intn;staticintm;public:Sample(inti){n=i;m+=i;}voiddisp(){coutn=n,m=mendl;}};intSample::m=0;voidmain(){Samples1(1),s2(3),s3(5);n=1,m=9n=3,m=9n=5,m=9s1.disp();s2.disp();s3.disp();}以上程序的执行结果是________。1.允许访问类的所有对象的私有成员,公有成员和保护成员的是()A)友元函数B)成员函数C)内联函数D)重载函数2.类A是类B的友元,类B是类C的友元,则________是正确的.A)类B是类A的友元B)类C是类A的友元C)类A是类C的友元D)以上都不对3.一个类的友元函数能够访问该类的______A)私有成员B)保护成员C)公有成员D)所有成员4.类模板的模板参数__________.A)只可作为数据成员的类型B)只可作为成员函数的返回类型C)只可作为成员函数的参数类型D)以上三者皆可5.一个()允许用户为类定义一种模式,使得类中的某些数据成员、某些成员函数的参数和返回值可以取任意数据类型。A)函数模板B)模板函数C)类模板D)模板类6.类模板的使用实际上是将类模板实例化成一个具体的________。A类B对象C函数D模板类二章{int*p1,*p2;p1=__newint_________;p2=________newint___;cin______________*p1*p2_;if(*p2*p1)*p1=*p2;deletep2;cout“max=”___*p1____endl;1关于类和对象的说法不正确的是()A类是对象的类,对象是类的对象B系统不为类分配内存空间,而为对象分配内存空间C如果把人看作动物,那么细菌也是动物D类可以看作数据类型,对象也可以叫做对象的实体、实例等2类是()的集合,分类的依据是()具有相同属性和服务的一组对象抽象1对象的封装就是()A与世隔绝B只进不出C可进可出,但是外界不能干涉内部的处理过程D封装只是抽象的封装,外界可以直接干预2关于类的继承不正确的是()A引入类的继承目的就是为了代码重用,提高编程效率B子女有父母的特征是类的继承C子继父产业是类的继承D子类可以全部继承父类的属性和服务,也可部分继承父类的属性和服务四章下列关于运算符重载的描述中正确的。A)运算符重载可以改变操作数的个数B)运算符重载可以改变优先级C)运算符重载可以改变结合性D)运算符重载不可以改变语法结构友元重载运算符obj1〉obj2被C++编译器解释为()。A)operator(obj1,obj2)B)(obj1,obj2)C)obj2.operator(obj1)D)obj1.operator(obj2)下列运算符中,运算符在C++中不能重载。A)?:B)+C)-D)〈=五章继承具有________,即当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员。A规律性B传递性C重复性D多样性派生类的对象对它的基类成员中________是可以访问的。A公有继承的公有成员B公有继承的私有成员C公有继承的保护成员D私有继承的公有成员)在多继承中,公有派生和私有派生对于基类成员在派生类中的可访问性与单继承的规则__________。A)完全相同B)完全不同C)部分相同,部分不同D)以上都不对下列对派生类的描述中,__________是错误的。A)一个派生类可以作另一个派生类的基类B)派生类至少有一个基类C)派生类的成员除了它自己的成员外,包含了它的基类的成员D)派生类中继承的基类成员的访问权限到派生类保持不变对基类和派生类的关系描述中,__________是错误的。A)派生类是基类的具体化B)派生类是基类的子集C)派生类是基类定义的延续D)派生类是基类的组合派生类的构造函数的成员初始化列表中,不能包含______。A)基类的构造函数B)派生类中子对象的初始化C)基类的子对象初始化D)派生类中一般数据成员的初始化下列对派生类的描述中,错误的是()A.派生类的缺省继承方式是PRIVATEB.派生类至少有一个基类C.一个派生类可以作为另一个派生类的基类D.派生类只继承了基类的公有成员和保密成员下列说法中错误的是()A.公有继承时基类中的public成员在派生类中是public的B.公有继承时基类中的private成员在派生类中是不可直接访问的C.私有继承时基类中的public成员在派生类中是private的D.私有继承时基类中的public成员在派生类中是protected的若派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中的()A.私有成员B.公有成员C.保护成员D.保护成员或私有成员六章实现运行时的多态性要使用_____。A)构造函数B)析构函数C)重载函数D)虚函数关于函数的描述中,______是正确的。A)派生类的虚函数与基类的虚函数具有不同的参数个数和类型B)基类中说明了虚函数后,派生类中其对应的函数一定要说明为虚函数C)虚函数是一个成员函数D)虚函数是一个static类型的成员函数关于动态联编的下列叙述中,____是错误的。A)动态联编是以虚函数为基础的B)动态联编调用虚函数操作是指向对象的指针或引用C)动态联编是在运行时确定所调用的函数代码的D)动态联编是在编译时确定操作函数的用于类中虚成员函数说明的关键字()A.virtualB.publicC.protectedD.private编译时的多态性通常使用()获得。A.继承B.虚函数C.重载函数D.析构函数若要强制C++对虚函数的调用使用静态联编,则在调用中对该函数使用()A.成员名限定B.指针C.引用D.VIRTUAL关键字C++有()种联编。A.1B.2C.3D.4虚函数必须是类的()A.成员函数B.友元函数C.构造函数D.析构函数不能说明为虚函数的是()A.析构函数B.构造函数C.类的成员函数D.以上都正确不同的对象可以调用相同名称的函数,并可导致完全不同的行为的现象称为()A.多态性B.抽象C.继承D.封装若析构函数是虚函数,则delete对析构函数的调用采用()A.静态联编B.动态联编C.重载函数D.多重函数若派生类中没有对基类的虚函数进行重定义,则它继承基类中的()A.访问权限B.保护成员C.虚函数D.成员函数多态调用指()A.以任何方式调用一个虚函数B.以任何方式调用一个纯虚函数C.借助于指向对象的基类指针或引用调用一个虚函数D.借助于指向对象的基类指针或引用调用一个纯虚函数动态联编所支持的多态性称为()A.虚函数B.继承C.编译时的多态性D.运行时的多态性下列描述中,()是抽象类的特性。A)可以说明虚函数B)可以定义友元函数C)可以进行构造函数重载D)不能说明其对象()是一个在基类中说明的虚函数,它在该基类中没有定义,但要求任何派生类中的可访问性的规定是相同的。A)纯虚函数B)虚析构函数C)虚构造函数D)静态成员函数如果一个类至少有一个纯虚函数,那么就称该类为()。A)抽象类B)派生类C)纯基类D)以上都不对下面哪个基类中的成员函数表示纯虚函数()A.virtualvoidvf(int)B.voidvf(int)=0C.virtualvoidvf()=0D.virtualvoidvf(int)||关于纯虚函数,下列表述正确的是()A.纯虚函数是给出实现版本(即无函数体定义)的虚函数B.纯虚函数的声明总是“=0”结束C.派生类必须实现基类的纯虚函数D.含有纯虚函数的类一定是派生类
本文标题:97C++复习题
链接地址:https://www.777doc.com/doc-4343022 .html