A. 错误 B. 正确 正确答案:
19. C++流类库是用继承方法建立起来的,它具有两个平行的基类,即streambuf类和ios类,所有其他的流类都是从它们直接或间接地派生出来的。 A. 错误 B. 正确 正确答案:
20. C++利用类来实现面向对象程序设计的继承性。 A. 错误 B. 正确 正确答案:
C++程序设计16秋在线作业2
一、单选题(共 20 道试题,共 60 分。)
1. 下面叙述不正确的是()。
A. 基类的保护成员在保护派生类中仍然是保护的 B. 基类的保护成员在公有派生类中仍然是保护的 C. 基类的保护成员在私有派生类中仍然是保护的 D. 对基类成员的访问必须是无二义性的 正确答案:
2. 下面对于指针的描述不正确的是()。 A. 指针是地址变量
B. 指针不能用除0以外的常量赋值 C. 两个指针变量的加减法无意义
D. 指针指向不同基类型的变量长度不同 正确答案:
3. 假设己经定义好了一个类student,现在要定义类derived,它是从student私有派生的,定义类derived的正确写法是()。
A. class derived:: student private{ //…… }; B. class derived : student public { //…… }; C. class derived :private student { //…… }; D. class derived::public student { //…… }; 正确答案:
4. 在下面有关静态成员函数的描述中,正确的是()。 A. 在静态成员函数中可以使用this指针
B. 在建立对象前,就可以为静态数据成员赋值
C. 静态成员函数在类外定义时,要用static前缀 D. 静态成员函数只能在类外定义 正确答案:
5. 应在下列程序划线处填入的正确语句是()。 #include class Base { public: void fun(){cout<<\}; class Derived:public Base { void fun() {_____________ //显示调用基类的函数fun() cout<<\ } }; A. fun();
B. Base.fun(); C. Base::fun(); D. Base->fun(); 正确答案:
6. 下面程序的运行结果为()。 #include class A{ public: A(){cout<<”1”;} ~A(){cout<<”2”;} } class B:public A{ public: B(){cout<<”3”;} ~B(){cout<<”4”;} } void main(){ B b; } A. 1234 B. 1324 C. 1342 D. 3142 正确答案:
7. 类中定义的成员默认为()访问属性。 A. public B. private C. protected D. friend 正确答案:
8. 要使用动态联编,必须使用()调用虚函数。 A. 类名 B. 对象名 C. 派生类指针 D. 基类指针 正确答案:
9. 假设已经有定义char*const name=\下面的语句中正确的是()。 A. name[3]= 'q'; B. name=\
C. name=new char[5]; D. name=new char ('q') ; 正确答案:
10. 当将一个类A说明为另一个类B的友元后,类A能够直接访问类B的()。 A. 只能是公有成员 B. 只能是保护成员
C. 只能是除私有成员之外的任何成员 D. 具有任何权限的成员 正确答案:
11. 当将一个函数f()说明为另一个类B的友元后,函数f()能够直接访问类B的()。
A. 只能是公有成员 B. 只能是保护成员
C. 只能是除私有成员之外的任何成员 D. 具有任何权限的成员 正确答案:
12. 对于一个类,可以利用关键字()将一般函数、其他类的成员函数声明为该类的友元。 A. public B. private C. protected D. friend 正确答案:
13. 若有定义“int x=17;”,则语句“cout< 正确答案: 14. 对于类定义 class A{ public: virtual void func1( ){ } void func2( ){ } }; class B:public A{ public: void func1( ){cout<<″class B func 1″< A. A::func2( )和B::func1( )都是虚函数 B. A::func2( )和B::func1( )都不是虚函数 C. B::func1( )是虚函数,而A::func2( )不是虚函数 D. B::func1( )不是虚函数,而A::func2( )是虚函数 正确答案: 15. 对于一个类,可以利用关键字()将其他类声明为该类的友元。 A. public B. private C. protected D. friend 正确答案: 16. 假定classA为一个类,则执行“classA x(5);”语句时将自动调用该类的()。 A. 无参构造函数 B. 带参构造函数 C. 复制构造函数 D. 赋值重载函数 正确答案: 17. 类MyA的拷贝初始化构造函数是()。 A. MyA() B. MyA(MyA*) C. MyA(MyA&) D. MyA(MyA) 正确答案: 18. 下面选项中,()是用来声明虚函数的。 A. virtual B. void C. static D. inline 正确答案: 19. 在声明类时,下面的说法正确的是()。 A. 可以在类的声明中给数据成员赋初值 B. 数据成员的数据类型可以是register C. private、public、protected可以按任意顺序出现 D. 没有用private、public、protected定义的数据成员是公有成员 正确答案: 20. 下列()的调用方式是引用调用。 A. 形参是引用,实参是变量 B. 形参和实参都是变量 C. 形参是变量,实参是地址值 D. 形参是指针,实参是地址值 正确答案: C++程序设计16秋在线作业2 二、判断题(共 20 道试题,共 40 分。) 1. 成员函数体写在类外部的一定不是内联函数,写在类内部的一定是内联函数。 A. 错误 B. 正确 正确答案: 2. 当类中有指针类型数据成员时,需重载赋值运算符,否则会产生指针悬挂问题。 A. 错误 B. 正确 正确答案: 3. 使用cin和cout进行输入和输出操作必须包含头文件iomanip.h A. 错误 B. 正确 正确答案: 4. 若有声明:class C: public A,B{};则类C公有继承自类A及类B。 A. 错误 B. 正确 正确答案: 5. 析构函数是不能被派生类继承的。 A. 错误 B. 正确 正确答案: 6. 若有声明:class B:virtual public A{};则类A为类B的虚基类。 A. 错误 B. 正确 正确答案: 7. ifstream是用于写文件的文件流。 A. 错误 B. 正确 正确答案: 8. 建立包含有对象成员的派生类对象时,自动调用构造函数的执行顺序依次为基类、对象成员所属类、派生类的构造函数。 A. 错误 B. 正确 正确答案: 9. 类模板必须由程序员实例化成模板类。 A. 错误 B. 正确 正确答案: 10. 静态数据成员是类中所有对象共享的,可以通过类的对象访问。 A. 错误 B. 正确 正确答案: 11. 原型说明中没有指出返回类型的函数(包括主函数main),C++默认该函数的返回类型是void A. 错误 B. 正确 正确答案: 12. C++利用类的派生机制实现面向对象程序设计的继承性。 A. 错误 B. 正确 正确答案: 13. 对于同一个运算符来说,重载的运算符的优先级比未重载的运算符的优先级高。 A. 错误 B. 正确 正确答案: 14. 静态数据成员属于类,因此可以使用“类名::”访问静态的数据成员。 A. 错误 B. 正确 正确答案: 15. 常量和引用在声明时必须初始化。 A. 错误 B. 正确 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库东师C++程序设计16秋在线作业2(2)在线全文阅读。
相关推荐: