您的位置:首页 > 其它

第六周实验报告(二)

2012-04-04 19:24 127 查看
03.#include<iostream>  
04.using namespace std;  
05.class A  
06.{  
07.private:  
08.    int a;  
09.public:  
10.    A(){a = 0;}           
11.    A(int aa):a(aa){}     //定义构造函数,用参数aa初始化数据成员a  
12.};  
13.  
14.void main()  
15.{  
16.    A *p;                 //定义类A的指针对象p    
17.    p = new A(100);       //用p指向动态对象并初始化为整数   
18.    system("pause");  
19.}  
20.  
21.//b.用指针类型作为成员函数的参数  
22.  
23.#include<iostream>  
24.using namespace std;  
25.class A  
26.{  
27.private:  
28.    int *a;  
29.    int n;  
30.    int Maxlen;  
31.      
32.public:  
33.    A(): a(0), n(0), Maxlen(0){}  
34.    A(int *aa, int nn, int MM);  
35.    ~A();  
36.    int GetValue(int i){return a[i];}  
37.};  
38.  
39.A::A(int *aa, int nn, int MM)  
40.{  
41.    n = nn;  
42.    Maxlen = MM;  
43.      
44.    if(n > Maxlen)  
45.    {  
46.        exit(1);  
47.    }  
48.      
49.    a = new int[Maxlen];  
50.      
51.    for(int i = 0; i < n; i++)    //以i为循环变量把aa数组中每个元素值传送给a数组的对应元素中  
52.    {  
53.        a[i] = aa[i];  
54.    }  
55.}  
56.  
57.A::~A()                          //析构函数的类外定义,释放指针型数据a所指向的空间  
58.{  
59.    delete []a;  
60.}  
61.  
62.void main()  
63.{  
64.    int b[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};      
65.    A r(b, 10, 10);   
66.    int i, s = 0;     
67.    for(i = 0; i < 10; i++)     //以i为循环变量,把r对象的a数据成员中的每个元素值依次累加到s中  
68.    {  
69.        s += r.GetValue(i);  
70.    }     
71.    cout << "s = " << s << endl;  
72.}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: