/*Copyright (c)2016,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:my.cpp
*作 者:张瀚文
*完成日期:2016年5月6日
*
*问题描述:
阅读程序,写出程序的运行结果并理解其运行机制。
*/
#include <iostream>
#include<cstring>
using namespace std;
class A
{
char *a;
public:
A(A &t);
A(char *aa)
{
a=new char[strlen(aa)+1];//这样做的意义在于:可以动态分配内存空间,根据实际需要,更加有效利用内存;
strcpy(a,aa);//数据成员a与形式参数aa的关系:aa为形参,根据aa的长度返回值,+1为结束字符,然后 aa的字符串拷贝到a中。
}
~A(){
delete[]a;//当主函数结束时,进行析构函数,将之前动态分配的内存释放。
}
void output(){cout<<a<<endl;}
};
A::A(A &t)
{
a=new char[strlen(t.a)+1];//这样做的意义在于:可以动态分配内存空间,根据实际需要,更加有效利用内存;
strcpy(a,t.a);
}
int main()
{
A a("good monring ,code monkeys!");
a.output();
A b(a);
b.output();
return 0;
}