/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: obiect.cpp
* 作者:赵晓晨
* 完成日期: 2013年04月05 日
* 版本号: v1.0
* 输入描述:无
* 问题描述:无
* 程序输出:无
*/
#include <iostream>
using namespace std ;
class A
{
private:
int a;
public:
A()
{
a=0;
}
A(int aa):a(aa){} //定义构造函数,用参数aa初始化数据成员a
void point ();
};
int main()
{
A *p; //定义类A的指针对象p
p=new A(1314);//用p指向动态对象并初始化为整数
p->point();
return 0;
}
void A::point()
{
cout<<a<<endl;
}
结果:
/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: obiect.cpp
* 作者:赵晓晨
* 完成日期: 2013年04月06 日
* 版本号: v1.0
* 输入描述:无
* 问题描述:无
* 程序输出:无
*/
#include<iostream.h>
#include<stdlib.h>
class A {
private:
int *a;
int n;
int MaxLen;
public:
A(): a(0), n(0), MaxLen(0) {}
A(int*aa, int nn, intMM);
~A();//定义析构函数
int GetValue(int i) {return a[i];}//函数体返回a[i]的值
};
A::A(int*aa, int nn, intMM)
{
n=nn;
MaxLen=MM;
if(n>MaxLen) exit(1);
a=new int[MaxLen];
for(i=0;i<n;i++)_
a[i]=aa[i]; //以i为循环变量把aa数组中每个元素值传送给a数组的对应元素中
}
A::~A() //析构函数的类外定义
{
delete []a;
} //释放指针型数据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++)
s+=r.GetValue(i) ; //以i为循环变量,把r对象的a数据成员中的每个元素值依次累加到s中
cout<<"s="<<s<<endl;
}
体会:
a.用指针访问对象
b.指针类型作为成员的参数
1.构造函数的定义。2。动态对象的建立。3.析构函数的类外定义。4.释放指针。5.for循环。。