北京交通大学《面向对象的程序设计》期末考试题集汇总

奥鹏北京交通大学期末考试题集参考

北京交通大学《面向对象的程序设计》奥鹏期末考试题库合集

单选题:
(1)要定义一个具有5个元素的一维数组vect,并使其各元素的初值依次是 30,50,-88,0 和 0,则下列定义语句中错误的是( )
A.int vect[ ]={30,50,-88};
B.int vect[ ]={30,50,-88,0,0};
C.int vect[5]={30,50,-88};
D.int vect[5]={30,50,-88,0,0};
正确答案问询微信:424329

(2)关于虚函数的描述中,正确的是()
A.虚函数是一个static类型的成员函数
B.虚函数是一个非成员函数
C.基类中说明了虚函数后,派生类中将其对应的函数可不必说明为虚函数
D.派生类的虚函数与基类的虚函数具有不同的参数个数和类型
正确答案问询微信:424329

(3)假定AB为一个类,则执行“AB a(4) , b[3] , * p[2] ;”语句时,自动调用该类构造函数的次数为( )。
A.3
B.4
C.6
D.9
正确答案问询微信:424329

(4)下面有关重载函数的说法中正确的是( )
A.重载函数必须具有不同的返回值类型
B.重载函数形参个数必须不同
C.重载函数必须有不同的形参列表
D.重载函数名可以不同
正确答案问询微信:424329

(5)有如下函数模板定义: template T func(T x, T y) { return x*x+y*y; } 在下列对func的调用中,错误的是( )
A.func(3, 5);
B.func(3.0, 5.5);
C.func (3, 5.5);
D.func(3, 5.5);
正确答案问询微信:424329

(6)设x和y均为bool量,则x&&y为真的条件是 ( )
A.它们均为真
B.其中一个为真
C.它们均为假
D.其中一个为假
正确答案问询微信:424329

(7)下面关于析构函数特征的描述正确的是( )。
A.一个类中可以定义多个析构函数
B.析构函数名与类名相同
C.析构函数不能指定返回类型
D.析构函数可以有一个或多个参数
正确答案问询微信:424329

(8)假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为: ( )
A.AB operator+(AB & a , AB & b)
B.AB operator+(AB & a)
C.operator+(AB a)
D.AB & operator+( )
正确答案问询微信:424329

(9)下列静态数据成员的特性中,错误的是( )
A.说明静态数据成员前边加static
B.静态数据成员要在类体外初始化
C.引用静态数据成员时,要在静态数据成员前加和作用域运算符
D.静态数据成员不是一个类所有对象共享的
正确答案问询微信:424329

(10)对于包括()类型数据成员的用户定义类型必须定义其析构函数
A.static
B.指针类型
C.字符串
D.字符型
正确答案问询微信:424329

(11)下列字符列中,可作为C++语言程序自定义标识符是( )
A.switch
B.file
C.break
D.do
正确答案问询微信:424329

(12)下列关于C++函数的说明中,正确的是( )
A.内联函数就是定义在另一个函数体内部的函数
B.函数体的最后一条语句必须是return语句
C.标准C++要求在调用一个函数之前,必须先声明其原型
D.编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式
正确答案问询微信:424329

(13)使用如setfill()的操作符对数据进行格式输出时,应包含( )头文件。
A.iostream
B.fstream
C.iomanip
D.stdlib
正确答案问询微信:424329

(14)以下错误的描述是( )。 函数调用可以
A.出现在一个表达式中
B.出现在执行语句中
C.作为一个函数的实参
D.作为一个函数的形参
正确答案问询微信:424329

(15)有如下程序: #include using namespace std; class Test { public: Test( ) { n+=2; } ~Test( ) { n-=3; } static int getNum( ) { return n; } private: static int n; }; int Test::n = 1; int main( ) { Test* p = new Test; delete p; cout << "n=" << Test::getNum( ) << end
A.n=0
B.n=1
C.n=2
D.n=3
正确答案问询微信:424329

(16)下面关于C++流的叙述中,正确的是( )
A.cin是一个输入流对象
B.可以用ifstream定义一个输出流对象
C.执行语句序列char *y="PQMN"; cout<
D.执行语句序列char x[80]; cin.getline(x,80); 时,若键入 Happy new year 则x中的字符串是"Happy"
正确答案问询微信:424329

(17)下列关于类和对象的叙述中,错误的是( )
A.一个类只能有一个对象
B.对象是类的具体实例
C.类是对某一类对象的抽象
D.类和对象的关系是一种数据类型与变量的关系
正确答案问询微信:424329

(18)已知在一个类体中包含如下函数原型: VOLUME operator-(VOLUME)const;,下列关于这个函数的叙述中,错误的是( )
A.这是运算符-的重载运算符函数
B.这个函数所重载的运算符是一个一元运算符
C.这是一个成员函数
D.这个函数不改变类的任何数据成员的值
正确答案问询微信:424329

(19)已知枚举类型定义语句为: enum Token { NAME, NUMBER, PLUS = 5, MINUS, PRINT = 10 }; 则下列叙述中错误的是( )(
A.枚举常量NAME的值为1
B.枚举常量NUMBER的值为1
C.枚举常量MINUS的值为6
D.枚举常量PRINT的值为10
正确答案问询微信:424329

(20)在每个C++程序中都必须包含有这样一个函数,该函数的函数名( )。
A.main
B.MAIN
C.name
D.function
正确答案问询微信:424329

(21)若一个类中含有纯虚函数,则该类称为( )。
A.基类
B.虚基类
C.抽象类
D.派生类
正确答案问询微信:424329

(22)用关键字( )标记的函数被称为虚函数。
A.virtual
B.private
C.public
D.protected
正确答案问询微信:424329

(23)有关运算符重载正确的描述是( )。
A.C++语言允许重载运算符时改变运算符的操作个数
B.C++语言允许重载运算符时改变运算符的优先级
C.C++语言允许重载运算符时改变运算符的结合性
D.C++语言允许重载运算符时改变运算符原来的功能
正确答案问询微信:424329

(24)以下保留字( )不能出现在说明虚函数原型的语句中。
A.static
B.operator
C.void
D.const
正确答案问询微信:424329

(25)下列描述中,成员函数中包括( )的类肯定是抽象类
A.virtual double Area();
B.virtual double Area()=0;
C.virtual double Area(void){}
D.double Area(void)=0;
正确答案问询微信:424329

(26)在声明类时 ,下面说法正确的是( )。
A.可以在类的声明中给数据成员赋初值
B.数据成员的数据类型可以是register
C.private,public,proected 可以按任意的顺序出现
D.没有用private,public,proected定义的数据成员是共有成员
正确答案问询微信:424329

(27)下面的哪个保留字不能作为函数的返回类型? ( )
A.void
B.int
C.new
D.long
正确答案问询微信:424329

(28)文件操作中,打开文件的访问模式常量中,( )是以追加方式打开文件的。
A.ios::in
B.ios::out
C.ios::binary
D.ios::ate
正确答案问询微信:424329

(29)有如下类声明: class Foo { int bar; }; 则Foo类的成员bar是( )
A.公有数据成员
B.公有成员函数
C.私有数据成员
D.私有成员函数
正确答案问询微信:424329

(30)下列关于C++函数的叙述中,正确的是()
A.每个函数至少要具有一个参数
B.每个函数都必须返回一个值
C.函数在被调用之前必须先声明
D.函数不能自己调用自己
正确答案问询微信:424329

(31)下面关于派生类的描述中,( )是错的。
A.一个派生类可以作为另一个派生类的基类
B.派生类至少有一个基类
C.派生类的成员除了它自己的成员外,还包含了它的基类的成员
D.派生类中继承的基类成员的访问权限到派生类保持不变
正确答案问询微信:424329

(32)下面( )不是构造函数的特征。
A.构造函数可以重载
B.构造函数可以设置缺省参数
C.构造函数的函数名和类名相同
D.构造函数必须指定返回值类型
正确答案问询微信:424329

(33)结构化程序设计所规定的三种基本控制结构是 ( )
A.输入、处理、输出
B.树形、网形、环形
C.顺序、选择、循环
D.主程序、子程序、函数
正确答案问询微信:424329

(34)以下不属于类访问权限的是( )
A.public
B.static
C.protected
D.private
正确答案问询微信:424329

(35)假定a为一个整型数组名,则元素a[4]的字节地址为 ( )。
A.a+4
B.a+8
C.a+16
D.a+32
正确答案问询微信:424329

(36)若需要把一个类外定义的成员函数指明为内联函数,则必须把关键字( )放在 函数原型或函数头的前面。
A.in
B.inline
C.inLine
D.InLiner
正确答案问询微信:424329

(37)下列对模板的声明中,正确的是( )。
A.template<A,B>
B.template<class A,B>
C.template<typename A,typename B>
D.template<class A;class B>
正确答案问询微信:424329

(38)下列关于运算符重载的叙述中,正确的是( )
A.通过运算符重载,可以定义新的运算符
B.有的运算符只能作为成员函数重载
C.若重载运算符+,则相应的运算符函数名是+
D.重载一个二元运算符时,必须声明两个形参
正确答案问询微信:424329

(39)下面函数的功能是( )。 void fun(char s1[ ], char s2[ ]) { while(s2++=s1++); }(
A.字符串比较
B.字符串复制
C.字符串连接
D.字符串反向
正确答案问询微信:424329

(40)作用域运算符的功能是( )
A.给定作用域的大小
B.表示作用域的级别的
C.某个成员是属于哪个类的
D.指出作用域的范围的
正确答案问询微信:424329

(41)在下列函数原型中,可以作为类AA构造函数的是( )
A.void AA(int);
B.int AA( );
C.AA(int)const;
D.AA(int);
正确答案问询微信:424329

(42)下列有关类的说法不正确的是( )。
A.对象是类的一个实例
B.任何一个对象只能属于一个具体的类
C.一个类只能有一个对象
D.类与对象的关系和数据类型与变量的关系相似
正确答案问询微信:424329

(43)下列的各函数中,( )不是类的成员函数。
A.构造函数
B.析构函数
C.拷贝初始化构造函数
D.友元函数
正确答案问询微信:424329

(44)在以下说明中,标识符ptr( )。 int (*ptr)[3];
A.说明不合法
B.是一个指针数组名,每个元素是一个指向整数变量的指针
C.是一个指针数组名,每个元素是一个指向整数变量的指针
D.是一个指向整型变量的指针
正确答案问询微信:424329

(45)在下面的一维数组定义中,哪一个有语法错误。( )
A.int a[ ]={1,2,3}
B.int a[10]={0}
C.int a[ ]
D.int a[5]
正确答案问询微信:424329

(46)for(int x=0,y=0;!x&&y<=5;y++)语句执行循环的次数是()
A.0
B.5
C.6
D.无数次
正确答案问询微信:424329

(47)执行语句序列 int i=0; while(i<25) i+=3; cou<<i; 输出结果是/( )
A.24
B.25
C.27
D.28
正确答案问询微信:424329

(48)若用数组名作为函数调用时的实参,则实际上传递给形参的是( )
A.数组首地址
B.数组的第一个元素值
C.数组中全部元素的值
D.数组元素的个数
正确答案问询微信:424329

(49)下列不是C++流对象的是( )。
A.cout
B.cin
C.cerr
D.ostream
正确答案问询微信:424329

(50)下列不合法的变量名为( )
A.int
B.int1
C.name_1
D.name0
正确答案问询微信:424329

(51)下列函数中,( )是对文件进行读操作的。
A.read()
B.write()
C.tellg()
D.seekp()
正确答案问询微信:424329

(52)下列关于模板的叙述中,错误的是( )
A.模板声明中的第一个符号总是关键字template
B.在模板声明中用 <和> 括起来的部分是模板的形参表
C.类模板不能有数据成员
D.在一定条件下函数模板的实参可以省略
正确答案问询微信:424329

(53)C++语言的跳转语句中,对于break和continue说法正确的是( )
A.break语句只应用于循环体中
B.continue语句只应用于循环体中
C.break是无条件跳转语句,continue不是
D.break和continue的跳转范围不够明确,容易产生问题
正确答案问询微信:424329

(54)在进行任何的C++流操作后,都可以用C++流的有关成员函数检测流的状态,用来检测是否到达文件的末尾函数是( )。
A.fail()
B.eof()
C.bad()
D.good()
正确答案问询微信:424329

(55)下列关于派生类可访问它基类成员的描述中,错误的是( )。
A.派生类可访问它基类中的成员与继承方式有关
B.派生类不可访问它基类中的私有成员
C.公有继承方式下,派生类可访问它基类的私有成员
D.私有继承方式下,派生类可访问它基类中的公有成员和保护成员
正确答案问询微信:424329

(56)下列运算符中,不能被重载的是( )。
A.【】
B..
C.()
D./
正确答案问询微信:424329

(57)下列关于this指针的叙述中,正确的是( )
A.任何与类相关的函数都有this指针
B.类的成员函数都有this指针
C.类的友元函数都有this指针
D.类的非静态成员函数才有this指针
正确答案问询微信:424329

(58)设x和y均为bool量,则x || y为假的条件是( )。
A.它们均为真
B.其中一个为真
C.它们均为假
D.其中一个为假
正确答案问询微信:424329

(59)有如下类声明: class MyBASE{ int k; public: void set(int n){ k=n;} int get( )const{ return k; } }; class MyDERIVED: protected MyBASE{ protected: int j; public: void set(int m, int n){MyBASE::set(m); j=n;} int get( )const{ return MyBASE::get( )+j; } }; 则类MyDERIVE
A.4
B.3
C.2
D.1
正确答案问询微信:424329

(60)关于new运算符的描述中,错误的是( )。
A.它可以用来动态创建对象和对象数组
B.使用它创建的对象和对象数组可以使用delete删除
C.使用它创建对象时要调用对应类的构造函数
D.使用它创建对象数组时必须指定初值
正确答案问询微信:424329

(61)下列字符串中,正确的C++标识符是( )。
A.foo-1
B.2b
C.new
D._256
正确答案问询微信:424329

(62)结构化程序设计所规定的三种基本控制结构是 ( )。
A.输入、处理、输出
B.树形、网形、环形
C.顺序、选择、循环
D.主程序、子程序、函数
正确答案问询微信:424329

(63)下列关于C++函数的叙述中,正确的是()。
A.每个函数至少要具有一个参数
B.每个函数都必须返回一个值
C.函数在被调用之前必须先声明
D.函数不能自己调用自己
正确答案问询微信:424329

(64)下列关于构造函数的描述中,错误的是()。
A.构造函数可以设置默认参数
B.构造函数在定义类对象时自动执行
C.构造函数可以是内联函数
D.构造函数不可以重载
正确答案问询微信:424329

(65)下列关于C++函数的叙述中,正确的是( )。
A.每个函数至少要具有一个参数
B.每个函数都必须返回一个值
C.函数在被调用之前必须先声明
D.函数不能自己调用自己
正确答案问询微信:424329

(66)假定a为一个整型数组名,则元素a[4]的字节地址为 ( )。
A.a+4
B.a+8
C.a+16
D.a+32
正确答案问询微信:424329

(67)设x和y均为bool量,则x&&y为真的条件是 ( )。
A.它们均为真
B.其中一个为真
C.它们均为假
D.其中一个为假
正确答案问询微信:424329

(68)执行语句序列 int i=0; while(i < 25) i+=3; cout<<i;输出结果是( )。
A.24
B.25
C.27
D.28
正确答案问询微信:424329

(69)若用数组名作为函数调用时的实参,则实际上传递给形参的是( )。
A.数组首地址
B.数组的第一个元素值
C.数组中全部元素的值
D.数组元素的个数
正确答案问询微信:424329

(70)下列关于模板的叙述中,错误的是( )。
A.模板声明中的第一个符号总是关键字template
B.在模板声明中用 < 和 > 括起来的部分是模板的形参表
C.类模板不能有数据成员
D.在一定条件下函数模板的实参可以省略
正确答案问询微信:424329

(71)下列关于类和对象的叙述中,错误的是( )。
A.一个类只能有一个对象
B.对象是类的具体实例
C.类是对某一类对象的抽象
D.类和对象的关系是一种数据类型与变量的关系
正确答案问询微信:424329

(72)在下面的一维数组定义中,哪一个有语法错误。( )
A.int a[]={1,2,3}
B.int a[10]={0}
C.int a[]
D.int a[5]
正确答案问询微信:424329

(73)执行下列语句段后,for(int i=50; i>1; –i) cout<<'*'; 输出字符“*”的个数是( )。
A.48
B.49
C.50
D.51
正确答案问询微信:424329

(74)下列关于this指针的叙述中,正确的是( )。
A.任何与类相关的函数都有this指针
B.类的成员函数都有this指针
C.类的友元函数都有this指针
D.类的非静态成员函数才有this指针
正确答案问询微信:424329

(75)对于语句cout<<endl<<x; 中的各个组成部分,下列叙述中错误的是( )。
A.“cout”是一个输出流对象
B.“endl”的作用是输出回车换行
C.“x”是一个变量
D.“<<”称作提取运算符
正确答案问询微信:424329

(76)在面向对象的程序设计中,定义“类”时保留字是用( )。
A.type
B.class
C.private
D.public
正确答案问询微信:424329

(77) 在一个程序中,要求通过函数实现一种简单的功能,并且要求加快执行速度,选用( )。
A.内联函数
B.重载函数
C.递归调用
D.嵌套调用
正确答案问询微信:424329

(78)下列描述中,成员函数中包括( )的类肯定是抽象类。
A.virtual double Area();
B.virtual double Area()=0;
C.virtual double Area(void){}
D.double Area(void)=0;
正确答案问询微信:424329

(79) 已知在一个类体中包含如下函数原型: VOLUME operator-(VOLUME)const;,下列关于这个函数的叙述中,错误的是( )。
A.这是运算符-的重载运算符函数
B.这个函数所重载的运算符是一个一元运算符
C.这是一个成员函数
D.这个函数不改变类的任何数据成员的值
正确答案问询微信:424329

(80)有如下程序: #include “iostream.h” void fun(int& x, int y) { int t = x; x = y; y = t; } int main( ) { int a[2] = {23, 42}; fun(a[1], a[0]); std::cout << a[0] << ", " << a[1] << std::endl; return 0; } 执行后的输出结果是( )。
A.42, 42
B.23, 23
C.23, 42
D.42, 23
正确答案问询微信:424329

(81)下列关于模板的叙述中,错误的是( )。
A.模板声明中的第一个符号总是关键字template
B.在模板声明中用 < 和 > 括起来的部分是模板的形参表
C.类模板不能有数据成员
D.在一定条件下函数模板的实参可以省略
正确答案问询微信:424329

(82)当一个函数无返回值时,定义它时函数的类型为( )。
A.任意
B.无
C.void
D.int
正确答案问询微信:424329

(83)下列静态数据成员的特性中,错误的是()。
A.说明静态数据成员前边加static
B.静态数据成员要在类体外初始化
C.引用静态数据成员时,要在静态数据成员前加<类名>和作用域运算符
D.静态数据成员不是一个类所有对象共享的
正确答案问询微信:424329

(84)对于包括()类型数据成员的用户奥鹏北京交通大学期末考试题集参考定义类型必须定义其析构函数。
A.static
B.指针类型
C.字符串
D.字符型
正确答案问询微信:424329

(85)有如下程序: #include “iostream.h” using namespace std; class BASE{ public: ~BASE( ){ cout<<"BASE";} }; class DERIVED: public BASE { public: ~DERIVED( ){ cout<<"DERIVED";} }; int main( ){DERIVED x; return 0 ;} 执行后的输出结果是( )。
A.BASE
B.DERIVED
C.BASEDERIVED
D.DERIVEDBASE
正确答案问询微信:424329

(86)在下列函数原型中,可以作为类AA构造函数的是( )。
A.void AA(int);
B.int AA( );
C.AA(int)const;
D.AA(int);
正确答案问询微信:424329

(87)在每个C++程序中都必须包含有这样一个函数,该函数的函数名为( )。
A.main
B.MAIN
C.name
D.function
正确答案问询微信:424329

(88)采用函数重载的目的是( )。
A.提高速度
B.减少空间
C.实现共享
D.使用方便,提高可读性
正确答案问询微信:424329

(89)通常拷贝构造函数的参数是( )。
A.某个对象名
B.某个对象的成员名
C.某个对象的引用名
D.某个对象的指针名
正确答案问询微信:424329

(90) 下面函数的功能是( )。 void fun(char s1[ ], char s2[ ]) { while(s2++=s1++); }
A.字符串比较
B.字符串复制
C.字符串连接
D.字符串反向
正确答案问询微信:424329

(91) 有如下程序: #include “iostream.h” using namespace std; int main( ) { cout.fill('*'); cout.width(6); cout.fill('#'); cout << 123 << endl; return 0; } 执行后的输出结果是( )。
A. #123
B.123 #
C.***123
D.123***

正确答案问询微信:424329

(92)对于Point类的拷贝构造函数原型Point(const Point& p),其中Point& p表示( )。
A.指向Point类的指针为p
B.将p的地址赋给变量const
C.p是类Point的对象引用
D.变量Point与p的按位相与
正确答案问询微信:424329

(93)关于构造函数的描述,不正确的是( )。
A.构造函数的函数名与类名相同
B.构造函数必须指定类型说明
C.构造函数可以设置缺省参数
D.构造函数可以重载
正确答案问询微信:424329

(94)为了取代C中带参数的宏,在C++中使用 ( )。
A. 重载函数
B. 内联函数
C. 递归函数
D. 友元函数
正确答案问询微信:424329

(95)下列关于子类型的表述中错误的是( )。
A.如果B是A的子类型,则A也是B的子类型
B.如果B是A的子类型,则B的对象可以初始化A的引用
C.只有当B公有继承A,B才可能成为A的子类型
D.如果B是A的子类型,C是B的子类型,则C是A的子类型
正确答案问询微信:424329

多选题:
(1)下面说法正确的是( )
A.将数据结构和算法置于同一个函数内,即为数据封装
B.一个类通过集成可以获得另一个类的特征
C.面向对象要求程序员集中于事物的本质特征,用抽象的观点看待程序
D.同一消息为不同的对象接受时,产生的行为是一样的,这称为一致性
正确答案问询微信:424329

(2)继承是( )的方法。
A.将特殊的类变成通用的类
B.把通用的参数传送给特殊的类的对象
C.将通用的类变成特殊的类
D.将已有的类添加新的特性,但不重写它们
正确答案问询微信:424329

(3)下面关于析构函数描述正确的是( )
A.系统可以提供默认的析构函数
B.析构函数必须由用户定义
C.析构函数没有参数
D.析构函数可以设置默认参数
正确答案问询微信:424329

(4)下列函数中,可以作为虚函数的是( )。
A.普通函数
B.非静态成员函数
C.构造函数
D.析构函数
正确答案问询微信:424329

判断题:
(1)抽象类中只能有一个纯虚函数。( )
正确答案问询微信:424329

(2)友元函数说明在类体内它是一种成员函数 。( )
正确答案问询微信:424329

(3)友元类中所有成员函数都是友元函数 。( )
正确答案问询微信:424329

(4)使用const说明常量时,可以不必指出类型.( )
正确答案问询微信:424329

(5)虚函数不能是类的静态成员。( )
正确答案问询微信:424329

(6)变量必须先定义后赋值。( )
正确答案问询微信:424329

(7)在基类中被说明为虚函数的类的成员函数必须在每个派生类中说明为虚函数,才能具有多态的特征。( )
正确答案问询微信:424329

(8)派生类不能作为基类派生出新类。( )
正确答案问询微信:424329

(9)抽象类只能用作其他类的基类。( )
正确答案问询微信:424329

(10)成员函数中调用的虚函数可能实现动态联编。( )
正确答案问询微信:424329

(11)在类体内允许对数据成员进行初始化 。( )
正确答案问询微信:424329

(12)作为模板类型参数的关键字class,特别含义是“任何用户定义类的类型”。( )
正确答案问询微信:424329

(13)在C++语言中,类是支持数据封装的工具。( )
正确答案问询微信:424329

(14)析构函数是不能重载的 。( )
正确答案问询微信:424329

(15)一般对象和指向对象指针的成员函数表示分别是运算符.和->。( )
正确答案问询微信:424329

(16)在私有继承方式下,派生类的对象可访问基类中的公有成员。( )
正确答案问询微信:424329

(17)派生类的成员函数可以直接访问基类的所有成员。( )
正确答案问询微信:424329

(18)静态数据成员的值是不能改变的 。( )
正确答案问询微信:424329

(19)常量不能作为左值使用。( )
正确答案问询微信:424329

(20)一个类可以作为另一个类的友元类。( )
正确答案问询微信:424329

(21)用new动态申请的内存是在堆中分配的,而不是在栈中分配的。( )
正确答案问询微信:424329

(22)在类的定义中,引入友元的原因是提高效率。( )
正确答案问询微信:424329

(23)多重继承中,派生类构造函数对其基类构造函数的执行顺序取决于它成员函数初始化表中说明的基类顺序。( )
正确答案问询微信:424329

(24)在派生过程中,派生类吸收包括构造函数和析构函数在内的所有基类成员。( )
正确答案问询微信:424329

(25)子对象的初始化在其构造函数的成员初始化列表中实现。( )
正确答案问询微信:424329

编程题:
(25)子对象的初始化在其构造函数的成员初始化列表中实现。( )
正确答案问询微信:424329

(25)子对象的初始化在其构造函数的成员初始化列表中实现。( )
正确答案问询微信:424329

(25)子对象的初始化在其构造函数的成员初始化列表中实现。( )
正确答案问询微信:424329

(25)子对象的初始化在其构造函数的成员初始化列表中实现。( )
正确答案问询微信:424329

简答题:
(1)比较类的3种继承方式public(公有继承)、protected (保护继承)、private(私有继承)之间的差别。
正确答案问询微信:424329

(2)写出下列程序的运行结果。#include <iostream.h>#include <iomanip.h>void main(){ int i,j,k; for(i=1;i<=3;i++) //控制输出行 { for(j=1; j<=6-i; j++) //每行前的空格 cout<<" "; //输出四个空格 for(k=1;k<=i;k++) cout<<setw(4)<<k; for(k=i-1; k>0 ;k–) cout<<setw(4)<<k; cout<<endl; }}输出结果:
正确答案问询微信:424329

(3)写出下面程序的运行结果。 #include "iostream.h" class test{ private: int num; float fl; public: test(); int getint( ){return num;} float getfloat( ){return fl;} ~test( );};test::test(){ cout << "Initalizing default"<< endl; num=0; fl=0.0;}test::~test( ){ cout<< "Desdtructor is active" << endl;}void main( ){ test array[2]; cout<<array[1].getint()<<" "<<array[1].getfloat()<<endl;}输出结果:
正确答案问询微信:424329

(4)写出下面程序的运行结果。 #include "iostream.h" void main(){int i=1;while (i<=15){ i++; if (i%3!=2) continue; else cout <<"i="<<i<<endl; }}
正确答案问询微信:424329

提供优质的教育资源

公众号: 超前自学网