封装:把数据(属性)和函数(方法)合成一个整体,这在计算机世界中是用类和对象实现的。(把属性和方法进行封装)
客观事物封装成抽象的类,并且类可以把自己的属性和方法只让可信的类或者对象操作,对不可信的进行信息的隐藏。(对属性和方法进行访问控制)
类是把属性和方法进行封装,同时对类的属性和方法进行访问控制.
类是由我们根据客观事物抽象而成,形成一类事物,然后用类去定义对象,形成这类事物的具体个体。
类是一个数据类型,类是抽象的,而对象是一个具体的变量,是占用内存空间的。
类就是你定义了一个封装
对象就是你这个封装实际使用的针对的对象
拷贝构造函数
用对象1初始化对象2的时候拷贝构造函数被调用。
当用对象1括号方式初始化对象2的时候拷贝函数被调用。
当用对象(此处是元素而而非指针或引用)做函数参数的时候,实参传递给形参的过程会调用拷贝构造函数。
当用对象(此处是元素而而非指针或引用)做函数返回值的时候,若用同一类型来接收该返回值,则会执行拷贝构造函数(此时会涉及到匿名对象的去和留的问题,因为函数的返回对象是个匿名对象)。
析构函数:
C++类中可以定义一个特殊的成员函数来清理对象和释放我们在对象中分配的内存,这个特殊的方法叫做析构函数。
析构通常是在对象生命周期结束之前调用,我们会在此时去释放我们在对象中创建的堆内存,保证程序的合理性。
this->name = (char *)malloc(sizeof(name)+1);
free(this->name);