C++程序设计实验报告(四十四)---第六周任务二

来源:互联网 发布:手机淘宝网软件下载 编辑:程序博客网 时间:2024/05/22 08:10

/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2012, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 程序填写(const应用)
* 作 者: 刘镇
* 完成日期: 2012 年 3 月 25 日
* 版 本 号: 1.041
* 对任务及求解方法的描述部分
* 输入描述:......
* 问题描述: a. 用指针访问对象;b. 指针类型作为成员函数的参数
* 程序输出: ......
* 程序头部的注释结束
*/

 

a:

#include<iostream>using namespace std;class A{private:int a;public:A(){a = 0;}      A(int aa):a(aa){}     //定义构造函数,用参数aa初始化数据成员a};void main(){A *p;       //定义类A的指针对象pp = new A(100);     //用p指向动态对象并初始化为整数system("pause");}


 

b:

#include<iostream>using namespace std;class A{private:int *a;int n;int Maxlen;public:A(): a(0), n(0), Maxlen(0){}A(int *aa, int nn, int MM);~A();int GetValue(int i){return a[i];}};A::A(int *aa, int nn, int MM){n = nn;Maxlen = MM;if(n > Maxlen){exit(1);}a = new int[Maxlen];for(int i = 0; i < n; ++i)    //以i为循环变量把aa数组中每个元素值传送给a数组的对应元素中{a[i] = aa[i];}}A::~A()         //析构函数的类外定义,释放指针型数据a所指向的空间{delete []a;}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)    //以i为循环变量,把r对象的a数据成员中的每个元素值依次累加到s中{s += r.GetValue(i);}cout << "s = " << s << endl;}


运行结果:

 

 


感言:

对于要你做的有整体把握,用自己的理念做就可以。