第七周 牛刀小试

/* Copyright (c) 2013, 烟台大学计算机学院 
* All rights reserved. 
* 作    者:赵焱
* 完成日期:2014 年 4 月 12 日 
* 版 本 号:v1.0 
* 问题描述:深复制 
*/  
  
#include<iostream>  
using namespace std;  
class A  
{  
private:  
    int *arrayAddr;
    int len;         
    int max;         
public:  
    A(int *a, int n);  
    ~A();  
    int getValue(int i);     
    int getLen();            
    int getMax( );          
};  
  
A::A(int *a, int n)  
{  
    arrayAddr=new int[n];  
    len=n; 
    for(int i=0;i<n;i++)  
    {  
        arrayAddr[i]=a[i];  
    }  
}  
  
A::~A()  
{  
    delete []arrayAddr;  
}  
  
int A::getValue(int i){     
    return arrayAddr[i];  
}  
int A::getLen(){   
    return len;  
}  
int A::getMax( ) {  
    max=arrayAddr[0];  
    for(int i=1;i<len;i++)  
    {  
        if(arrayAddr[i]>max)  
        {  
            max=arrayAddr[i];  
        }  
    }  
    return max;  
}  
int main(){  
    int b[10]= {75, 99, 90, 93, 38, 15, 5, 7, 52, 4};  
    A r1(b,10);  
    cout<<"最大值:"<<r1.getMax()<<endl;  
    int c[15] = {18,68,10,52,3,19,12,100,56,96,95,97,1,4,93};  
    A r2(c,15);  
    int i,s=0;  
    for(i=0; i<r2.getLen(); i++)  
        s+=r2.getValue(i);  
    cout<<"所有元素的和为:"<<s<<endl;  
    return 0;  
}

你可能感兴趣的:(第七周 牛刀小试)