this
类的不同对象共用同一份成员函数,同样函数如何知道修改的数据是不同对象的?
类的成员函数默认隐藏了一个参数(即this指针),当对象调用成员函时会将当前对象的地址传入给this指针。
①this指针不是对象所有的,只有当对象调用成员函数时才会有this指针。
②隐藏参数形式:
类名 *const this;//this所指对象不可更改
常方法:
int fun (......)const;// 即const 类名 *const this;const修饰的是*this,不可修改当前对象的数据
类中默认的六种函数:
构造函数:
①在实例化对象时默认调用,该对象只会调用一次构造函数。
②构造函数可重载。
拷贝构造:
①构造函数的一种,对象实例化时被另一个对象赋值。
析构函数:
①对象退出生存域时,默认调用析构函数。
②析构函数不可重载。
赋值函数:
两个已经实例化的对象,一个对象赋给另一个对象。
运算符重载
…