云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 《c++》复习题集及答案

《c++》复习题集及答案

  • 62 次阅读
  • 3 次下载
  • 2025/12/15 16:40:22

(1) (2) (3)

32.class A { char *a; public:

___(1)___ //定义无参构造函数,使a的值为空 A(char *aa) { a=___(2)___;

strcpy(a,aa); //用aa所指字符串初始化a所指向的动态存储空间 }

___(3)___ //定义析构函数,删除a所指向的动态存储空间 };

(1) (2) (3)

33.class A { int a,b; public:

A(int aa=0, int bb=0) ___(1)___ {} //分别用aa和bb对应初始化a和b };

main() {

___(2)___ ; //定义类A的对象x并用5初始化,同时定义y并用x初始化 ___(3)___ ; //定义p指针,使之指向对象x }

(1) (2) (3)

34.class A { int a,b; public:

___(1)___ //定义构造函数,使参数aa和bb的默认值为0, //在函数体中用aa初始化a,用bb初始化b };

main() {

A *p1, *p2;

___(2)___ ; //调用无参构造函数生成由p1指向的动态对象 ___(3)___ ; //调用带参构造函数生成由p2指向的动态对象, //使a和b成员分别被初始化为4和5 }

(1) (2) (3)

35. #include

25

#include class A {

int *a; int n; int MaxLen; public:

A(): a(0), n(0), MaxLen(0) {} A(int *aa, int nn, int MM) { n=nn;

MaxLen=MM;

if(n>MaxLen) exit(1);

___(1)___; //由a指向长度为MaxLen的动态数组 for(int i=0; i

~A() {delete []a;}

int GetValue(int i) ___(2)___ //函数体返回a[i]的值 };

void main() {

int b[10]={1,2,3,4,5,6,7,8,9,10}; A r(b,10,10); int i,s=0;

for(i=0; i<10; i++); ___(3)___ //把r对象的a数据成员中的每个 //元素值依次累加到s中 cout<<\ }

(1) (2) (3)

36. #include #include class A {

int *a; int n; int MaxLen; public:

A(): a(0), n(0), MaxLen(0) {} A(int *aa, int nn, int MM) { n=nn;

MaxLen=MM;

if(n>MaxLen) exit(1); a=new int[MaxLen];

___(1)___; //以i为循环变量把aa数组中每个元素值 //传送给a数组的对应元素中 } ~A();

int GetValue(int i) {return a[i];} //函数体返回a[i]的值

};

26

___(2)___ //析构函数的类外定义

void main() {

int b[10]={1,2,3,4,5,6,7,8,9,10}; A r(b,10,10); int i,s=0;

___(3)___ ; //以i为循环变量,把r对象的a数据成员中的 //每个元素值依次累加到s中 cout<<\ }

(1) (2) (3)

37. 一种类定义如下: class Goods {

private:

char gd_name[20]; //商品名称 int weight; //商品重量

static int totalweight; //同类商品总重量 public:

Goods (char*str,int w){ //构造函数 strcpy(gd_name,str); weight=w;

totalweight+=weight; }

~ Goods (){totalweight -= weight;}

char* GetN(){___(1)___;} //返回商品名称 int GetW(){return weight;}

___(2)___ GetTotal_Weight() { //定义静态成员函数返回总重量 ___(3)___; } }

(1) (2) (3)

38. class Point {

private: int x, y; public:

Point(){x=y=0;}

Point(int x0,int y0) {x=x0;y=y0;}

27

int GetX() { return x; } int GetY() { return y; }

void Print(){cout<<\ ___(1)___; //友元函数声明 ___(2)___; //友元函数声明 };

Point operator+(Point& pt,int dd)

//加号操作符重载函数,实现Point类对象与整数加法 {

Point temp=pt; temp.x+=dd; temp.y+=dd; return temp; }

Point operator+(Point& pt1,Point& pt2)

//加号操作符重载函数,实现两个Point类对象的加法 {

Point temp=pt1; temp.x+=pt2.x; ___(3)___; return temp; }

(1) (2) (3)

39. 在下面一段类定义中, Derived类是由直接基类Base 1和Base 2所派生的,Derived类包含有两个间接基类BaseBase,在初始化函数Init中,需要把x1和x2的值分别赋给属于基类Base1的x成员和属于基类Base2的x成员。 class BaseBase { protected: int x; public:

BaseBase(){ x = 1;} };

class Base1: public BaseBase { public: Base1(){} };

class Base2: public BaseBase { public: Base2(){}

28

搜索更多关于: 《c++》复习题集及答案 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

(1) (2) (3) 32.class A { char *a; public: ___(1)___ //定义无参构造函数,使a的值为空 A(char *aa) { a=___(2)___; strcpy(a,aa); //用aa所指字符串初始化a所指向的动态存储空间 } ___(3)___ //定义析构函数,删除a所指向的动态存储空间 }; (1) (2) (3) 33.class A { int a,b; publi

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com