欢迎使用CSDN-markdown编辑器

原创 2016年08月28日 16:10:21

析构函数主要用于类生命周期结束后的释放工作,

class Teacher{
public :
    int age;
    char* name;

public:
    Teacher(char* name, int age){
        this->name = (char*)malloc(strlen(name)+1);
        this->age = 20;
        strcpy(this->name, name);
        cout << "无参构造函数" << endl;
    }

    Teacher(Teacher &teacher){
        this->name = (char*)malloc(strlen(teacher.name)+1);
        strcpy(this->name,teacher.name);
        this->age = teacher.age;
    }

    ~Teacher(){
        free(this->name);
        cout << "析构函数" << endl;
    }

    void print(){
        cout << "姓名:" << this->name << "   年龄:" << this->age << endl;
    }
};

每当初始化完成这个类以后,使用完毕后会调用这个类的析构函数。
拷贝:在Teacher这个类里面有一个函数

Teacher(Teacher &teacher){
        this->name = (char*)malloc(strlen(teacher.name)+1);
        strcpy(this->name,teacher.name);
        this->age = teacher.age;
    }

如果对一个类的定义赋初值,或者通过return返回一个类,或者通过实参传递给形参赋值,则就会调用这个方法。
在这里是深拷贝,如果是浅拷贝则只会拷贝他的地址,深拷贝则会从新拷贝一份相同的值,同时创建一个新的内存地址

欢迎使用CSDN-markdown编辑器

  • 2015年10月14日 10:47
  • 5KB
  • 下载

欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

欢迎使用CSDN-markdown编辑器

使用poi导出excel,及合并单元格边框显示问题。 首先创建workbook、sheetHSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet ...

欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

暴力破解数独+舞蹈链算法解数独

求解数独的思路 我想通过自己的思路来求解,虽然网上肯定有非常巧妙高效的解法。因此我安装了HoDoKu这个软件,这个软件会分析当前数独每个待填格子可能存在的值,目前我发现Naked Or Hiden ...

欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

用git cmd pull 或push 时提示密码错误的解决方法

用git cmd pull 或push 时提示密码错误的解决方法有时候准备pull的时候却发现密码怎么输也输不对,提示的信息是没有权限或者密码错误,如下:$ git pull git@git.***....

欢迎使用CSDN-markdown编辑器

JavaScript面向对象

欢迎使用CSDN-markdown编辑器

作者:John Wittenauer翻译:GreatX源:Machine Learning Exercises In Python, Part 1这篇文章是一系列 Andrew Ng 在 Course...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:欢迎使用CSDN-markdown编辑器
举报原因:
原因补充:

(最多只允许输入30个字)