第九次上机实践项目-阅读项目-2

来源:互联网 发布:d3.v4.min.js 编辑:程序博客网 时间:2024/05/22 03:43
/* *Copyright (c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作    者:刘涛 *完成日期:2016年4月23号 *版 本 号:v1.0 * *问题描述:动态分配内存 */#include <iostream>using namespace std;class MyClass{public:    MyClass(int x=0):i(x){cout<<"C"<<i;}    ~MyClass(){cout<<"D"<<i;}    void SetValue(int val){i=val;}    int GetVal(){return i;}private:    int i;};int main(){    MyClass *p[3];    int i;    for (i=0; i<3; i++)    {        p[i]=new MyClass(i);        p[i]->SetValue(p[i]->GetVal()*2);    }    for (i=0; i<3; i++)        delete p[i];    cout<<endl;    return 0;}


运行结果:

运行过程:

定义了一个MyClass类的指针数组,然后给p指针开辟空间,执行构造函数,i=0的时候,输出一个C,p[i]->SetValue(p[i]->GetVal()*2),p[i]->SetValue(0*2)还是为0;i=1,p[i]->SetValue(1*2)等于2.i=2的时候,等于4;最后再一次执行析构函数,输出D0D2D4.

0 0