/* * Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作者:樊露露 * 完成日期:2013 年 4 月 5 日 * 版本号:v1.0 * * 输入描述:无 * 问题描述: * 程序输出: * 问题分析: * 算法设计:略 */ #include<iostream> using namespace std; class A{ private: int *a; int n; int MaxLen; public: A(int *,int ,int ); A():a(0),n(0),MaxLen(0){} ~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++){a[i]=aa[i];} //以i为循环变量把aa数组中每个元素值传送给a数组中的对应元素中 } A::~A(){ delete a; }//析构函数的类外定义,释放指针型数据a所指向的空间 int 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++){S+=b[i];} //以i为循环变量,把r对象的a数据成员中的每个元素值一次累加到s中 cout<<"S="<<S<<endl; return 0; }