第六周实验报告任务2

/* (程序头部注释开始)

* 程序的版权和版本声明部分


* Copyright (c) 2011, 烟台大学计算机学院学生


* All rights reserved.* 文件名称:


 * 作 者: 李君凯


* 完成日期:2012 年 3月28日


 * 对任务及求解方法的描述部分

  1. 【任务2】程序填空:按要求将缺少的代码填进去  
  2. a. 用指针访问对象 

class A  
 {  
private:  
 int a;  
public:  
 A() {a=0;}  
 A (int aa):a(aa){}  //定义构造函数,用参数aa初始化数据成员a  
};  
main() {  
 A *p;  //定义类A的指针对象p  
 p=new A(5);   //用p指向动态对象并初始化为整数  
}  
[cpp] view plaincopyprint?
   
[cpp] view plaincopyprint?
   
[cpp] view plaincopyprint?
   
[cpp] view plaincopyprint?
b. 指针类型作为成员函数的参数  
class A   
{  
private:  
 int *a;   
 int n;   
 int MaxLen;  
 public:  
 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(i=<nn;++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;  
}  

上机感言:呼,感觉有点难

阅读更多
文章标签: 任务 class delete c
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭