第六周 【项目1-深复制体验】(1)

问题描述:

(1)阅读下面的程序,补足未完成的注释

#include<iostream>  
#include<cstring>  
using namespace std;  
class A  
{  
private:  
    char *a;  
public:  
    A(char *aa)  
    {  
        a = new char[strlen(aa)+1];  //(a)这样处理的意义在于:______________________________  
        strcpy(a, aa);  //(b)数据成员a与形式参数aa的关系:___________________________________  
    }  
    ~A()  
    {  
        delete []a;   //(c)这样处理的意义在于:  ___________________________________________  
    }  
    void output()  
    {  
        cout<<a<<endl;  
    }  
};  
int main(){  
    A a("good morning, code monkeys!");  
    a.output();  
    A b("good afternoon, codes!");  
    b.output();  
    return 0;  
} 

(a)这样处理的意义在于:将aa所指向的字符串每一个字符所存储的后面加上"\0"。

(b)数据成员a与形式参数aa的关系:将aa所指向的单元复制到a所指向的单元。

(c)这样处理的意义在于:释放a所占的空间。

运行结果:

第六周 【项目1-深复制体验】(1)_第1张图片


你可能感兴趣的:(第六周 【项目1-深复制体验】(1))