#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与aa同为指针数组,系统分配的内存空间相同
}
~A()
{
delete []a; //(c)这样处理的意义在于:释放指针所指向的动态内存空间。
}
void output()
{
cout<<a<<endl;
}
};
int main()
{
A a("good morning,code monkeys!");
a.output();
A b(a);
b.output();
return 0;
}
9.1体验深复制
最新推荐文章于 2024-06-11 08:57:20 发布