C++试题.docx

上传人:b****6 文档编号:6507334 上传时间:2023-01-07 格式:DOCX 页数:9 大小:16.16KB
下载 相关 举报
C++试题.docx_第1页
第1页 / 共9页
C++试题.docx_第2页
第2页 / 共9页
C++试题.docx_第3页
第3页 / 共9页
C++试题.docx_第4页
第4页 / 共9页
C++试题.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

C++试题.docx

《C++试题.docx》由会员分享,可在线阅读,更多相关《C++试题.docx(9页珍藏版)》请在冰豆网上搜索。

C++试题.docx

C++试题

一、选择填空

1.对定义重载函数的下列要求中,()是错的。

GG.要求参数的个数不同;

HH.要求参数中至少有一个类型不同;

II.要求参数个数相同时,参数类型不同;

JJ.要求函数的返回值不同。

2.下列函数中,()不能重载。

KK.成员函数;

LL.非成员函数;

MM.析构函数;

NN.构造函数。

3.下列对重载函数的描述中,()是错的。

OO.重载函数中不允许使用缺省参数;

PP.重载函数中编译系统会根据参数表进行选择;

QQ.不要使用重载函数来描述毫无相干的函数;

RR.构造函数重载将会给初始化带来多种方式;

4.下列运算符中,()运算符不能重载。

SS.&&;B.[];C.:

:

;D.new

5.下列关于运算符重载的描述中,()是正确的。

TT.运算符重载可以改变操作数的个数;

UU.运算符重载可以改变优先级;

VV.运算符重载可以改变结合性;

WW.运算符重载不可以改变语法结构。

6.运算符重载函数是()。

XX.成员函数;

YY.友元函数;

ZZ.内联函数;

AAA.带缺省参数的函数。

7.关于动态联编的下列描述中,()是错误的。

BBB.动态联编是以虚函数为基础的;

CCC.动态联编是在运行时确定所调用的函数代码的;

DDD.动态联编调用函数操作是指向对象的指针或对象引用;

EEE.动态联编是在编译时确定操作函数的;

8.关于虚函数的描述中,()是正确的。

FFF.虚函数是一个static类型的成员函数;

GGG.虚函数是一个非成员函数;

HHH.基类中说明了虚函数后,派生类中将其对应的函数可不必说明为虚函数;

III.派生类的虚函数与基类的虚函数具有不同的参数个数和类型。

9.关于纯虚函数和抽象类的描述中,()是错误的。

JJJ.纯虚函数是一种特殊的虚函数,它没有具体的实现;

KKK.抽象类是指具有纯虚函数的类;

LLL.一个基类中说明有纯虚函数,该基类的派生类一定不再是抽象类;

MMM.抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出;

10.下列描述中,()是抽象类的特性。

NNN.可以说明虚函数;

OOO.可以进行构造函数重载;

PPP.可以定义友元函数;

QQQ.不能说明其对象。

二、判断下列描述的正确性,对者划√,错者划×。

1.函数的参数个数和类型都相同,只是返回值不同,这不是重载函数。

2.重载函数可以带有缺省值参数,但是要注意二义性。

3.多数运算符可以重载,个别运算符不能重载,运算符重载是通过函数定义实现的。

4.对每个可重载的运算符来讲,它既可以重载为友元函数,又可以重载为成员函数,还可以重载为非成员函数。

×

5.对单目运算符重载为友元函数时,说明一个形参;重载为成员函数时,不能显式说明形参。

6.重载运算符保持原运算符的优先级和结合性不变。

7.虚函数是用virtual关键字说明的成员函数。

8.构造函数说明为纯虚函数是没有意义的。

9.抽象类是指一些没有说明对象的类。

×

10.动态联编是在运行时选定调用的成员函数的。

三、分析下列程序的输出结果。

1、

#include

classB

{

public:

B(inti){b=i+50;show();}

B(){}

virtualvoidshow(){cout<<”B:

:

show()called.”<

protected:

intb;

};

classD:

publicB

{

public:

D(inti):

B(i){d=i+100;show();}

D(){}

voidshow(){cout<<”D:

:

show()called.”<

protected:

intd;

};

voidmain()

{

Dd1(108);

}

2、

#include

classB

{

public:

B(){}

B(inti){b=i;}

virtualvoidvirfun(){cout<<”B:

:

virfun()called.\n”;}

private:

intb;

};

classD:

publicB

{

public:

D(){}

D(inti,intj):

B(i){d=j;}

private:

intd;

voidvirfun(){cout<<”D:

:

virfun()called.\n”;}

};

voidfun(B*obj)

{obj->virfun();}

voidmain()

{

D*pd=newD;

fun(pd);

}

3、

#include

classA

{

public:

A(){ver=’A’;}

voidprint(){cout<<”TheAversion”<

protected:

charver;

};

classD1:

publicA

{

public:

D1(intnumber){info=number;ver=’1’;}

voidprint()

{cout<<”TheD1info:

”<

private:

intinfo;

};

classD2:

publicA

{

public:

D2(intnumber){info=number;}

voidprint()

{cout<<”TheD2info”<

private:

intinfo;

};

classD3:

publicD1

{

public:

D3(intnumber):

D1(number)

{info=number;ver=’3’;}

voidprint()

{cout<<”TheD3info”<

private:

intinfo;

};

voidprint_info(A*p)

{p->print();}

voidmain()

{

Aa;

D1d1(4);

D2d2(100);

D3d3(-25);

print_info(&a);

print_info(&d1);

print_info(&d2);

print_info(&d3);

}

4、

#include

classA

{

public:

A(){ver=’A’;}

virtualvoidprint(){cout<<”TheAversion”<

protected:

charver;

};

classD1:

publicA

{

public:

D1(intnumber)

{

info=number;ver=’1’;

}

voidprint()

{

cout<<”TheD1info:

”<

}

private:

intinfo;

};

classD2:

publicA

{

public:

D2(intnumber){info=number;}

voidprint()

{

cout<<”TheD2info:

”<

}

private:

intinfo;

};

classD3:

publicD1

{

public:

D3(intnumber):

D1(number)

{info=number;ver=’3’;}

voidprint()

{

cout<<”TheD3info:

”<

}

private:

intinfo;

};

voidprint_info(A*p)

{p->print();}

voidmain()

{

Aa;

D1d1(4);

D2d2(100);

D3d3(-25);

print_info(&a);

print_info(&d1);

print_info(&d2);

print_info(&d3);

}

5、

#include

classMatrix

{

public:

Matrix(intr,intc){row=r;col=c;elem=newdouble[row*col];}

double&operator()(intx,inty){returnelem[col*(x-1)+y-1];}

doubleoperator()(intx,inty)const{returnelem[col*(x-1)+y-1];}

~Matrix(){delete[]elem;}

private:

double*elem;

introw,col;

};

voidmain()

{

Matrixm(5,8);

for(inti=0;i<5;i++)

m(i,1)=i+5;

for(i=0;i<5;i++)

cout<

cout<

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1