77范文网 - 专业文章范例文档资料分享平台

C++清考资料类和对象(3)

来源:网络收集 时间:2019-03-28 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

D.类A的成员函数可以访问类B的对象的任何成员 9.下列说法中正确的是( )

A.类定义中只能说明函数成员的函数头,不能定义函数体 B.类中的函数成员可以在类体中定义,也可以在类体之外定义 C.类中的函数成员在类体之外定义时必须要与类声明在同一文件中 D.在类体之外定义的函数成员不能操作该类的私有数据成员 10.在C++中实现封装是借助于( ) A.枚举 B.类

C.数组 D.函数

11.假定AB为一个类,则执行 “AB a(2), b[3], *p[4];”语句时共调用该类构造函数的次数为( ) A. 3 B. 4 C. 5 D. 9 12.假定AB为一个类,px为指向该类的一个含有n个对象的动态数组的指针,则执行“delete []px;”语句时共调用该类析构函数的次数为( ) A. 0 B. 1 C. n D. n+1

13.假定一个类的构造函数为 “A(int aa, int bb) {a=aa; b=aa*bb;}”,则执行 “Ax(4,5);”语句后,x.a和x.b的值分别为( ) A. 4和5 B. 5和4 C. 4和20 D. 20和5 14.构造函数不具备的特征是 ( ) A.构造函数的函数名与类名相同 B.构造函数可以重载

C.构造函数可以设置默认参数 D.构造函数必须指定类型说明

15.C++ 对 C 语言作了很多改进,即从面向过程变成为面向对象的主要原因是( ) A.增加了一些新的运算符

B.允许函数重载,并允许设置缺省参数 C.规定函数说明符必须用原型 D.引进了类和对象的概念

16.对于任一个类,用户所能定义的构造函数的个数至多为( ) A.0 C.2

B.1 D.任意个

17.假定AA为一个类,a()为该类公有的函数成员,x为指向该类对象的指针,则访问x对象中函数成员a()的格式为( ) A.x.a C.x->a

18.若Sample类中的一个成员函数说明如下:

void set(Sample& a),则Sample& a的含义是( ) A.指向类Sample的名为a的指针

B.a是类Sample的对象引用,用来作函数Set()的形参 C.将a的地址赋给变量Set

D. 将Sample的对象a作为函数Set()的形参

B.x.a() D.x->a()

19.类MyA的拷贝初始化构造函数是 ( ) A. MyA()

B. MyA(MyA*)

C. MyA(MyA&) D. MyA(MyA) 20.定义析构函数时,应该注意( )。

A.其名与类名完全相同 B.返回类型是void类型

C.无形参,也不可重载 D.函数体中必须有delete语句

二、填空题

1.类是用户定义的类型,具有类类型的变量称作_______。 2.当建立_______,程序自动调用该类的构造函数。 4. 每个对象都是所属类的一个____________

3.定义重载构造函数时,应在_______上有所不同。

5.当一个成员函数被调用时,该成员函数的_______指向调用它的对象。 6.拷贝构造函数通过_______使用引用来初始化创建中的对象。 7.类的私有成员只能被它的成员函数和_________访问。

8.通过C++语言中的_________机制,可以从现存类中构建其子类。

9.封装要求一个对象应具备明确的功能,并具有_________以便和其它对象相互作用。 10.在删除一个动态对象时,将自动调用该动态对象所属类的_________函数。

11.假定用户没有给一个名为AB的类定义析构函数,则系统自动给出的缺省析构函数定义为___________

12、局部对象、静态局部对象和全局对象中,在同一程序中________生存期最短;this指针始终指向当前正在发出成员函数调用命令的________。

三、程序填空

1.在下面程序的底画线处填上适当的字句,使该程序执行结果为10。 #include class base {

int X; public:

①________∥为X置值 ②________∥取X值

};

void main() {

base test; test.init(3);

cout<

2.在下列程序的底画线处填上适当的字句,完成类中成员函数的定义。 #include class line; class box { private: int color; int upx,upy; int lowx,lowy; public:

①________ int same_color(line a,box b); void set_color(int c){color=c;}

void define_box(int x1,int y1,int x2,int y2){upx=x1;upy=y1;} };

class line {

private:

int color;int startx,starty;int len; public:

②________ int same_color(line a,box b); void set_color(int c){color=c;}

void define_line(int x,int y){startx=x;} };

int same_color(line a,box b) {

if(a.color==b.color) return 1; return 0; }

int main() {

line L; box B;

L.set_color(2); B.set_color(3);

cout<

3.在下面程序段横线处填上适当的内容。 class A{

_①_______ int n; public:

A(int nn=0):n(nn){ if(n==0)a=0;

else a=new int[n]; }

②________//定义析构函数,释放动态数组空间 };

4、在下面的横线处填上适当内容,使程序完整。 # include # include class loc{

private:

float x,y; public:

loc(_①_______) {

x=x1; y=y1; }

float getx( ){return x;} float gety( ){return y;}

②________ float dis(loc&,loc&); };

float dis(loc&a,loc&b) {

float dx=a.x-b.x; float dy=a.y-b.y;

return sqrt(dx*dx+dy*dy); }

void main( ) {

loc p1(3.5,4.5),p2(5.5,6.5); float d=dis(p1,p2);

cout<<\ }

四、程序阅读,写出下列程序的运行结果

1、# include class Location{ int X,Y; public:

void init(int=0,int=0); void valueX(int val){X=val;} int valueX( ){return X;} void valueY(int val){Y=val;} int valueY( ){return Y;} };

void Location::init(int initX,int initY) {

X=initX; Y=initY; }

void main( ) {

Location A,B; A.init( );

cout<

cout<

cout<

2、#include class My Class { public:

int number; void set(int i); };

int number=3;

void MyClass::set (int i)

{

number=i; }

void main() {

MyClass my1; int number=10; my1.set(5);

cout<

cout<

#include class A { private: double X,Y; public:

A(double xx=0, double yy=0) { X=xx; Y=yy;

cout<<″构造函数被调用(″<

A(A &p) { X=p.X; Y=p.Y; } }; A f() { A a(1,2);

return a; }

void main()

{ A a(4,5); A b(a);

b = f();

} 4、

#include class A {

private:

int X,Y; public:

A() { X=Y=0;

cout<<\ }

A(int xx,int yy) {

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C++清考资料类和对象(3)在线全文阅读。

C++清考资料类和对象(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/550225.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: