this指针概念
c++中的成员变量和成员函数是分开存储的
每一个非静态成员函数只会诞生一份函数实例 也就是说同类型的对象会共用一块代码
问题?
这一块代码是如何区分哪个对象调用自己的呢?
答:c++通过提供特殊的对象指针,this指针,解决上诉问题 this指针指向被调用的成员函数所属的对象
this指针是隐含的每一个非静态成员函数内的一种指针
this指针不需要定义,直接使用即可
this指针的用途
当形参和成员变量同名时 可用this指针来区分
在类的非静态成员函数中返回对象本身 可使用return *this ;
const修饰成员函数
常函数:
成员函数后加const后 我们称这个函数为常函数
长函数内不可以修改成员属性
成员属性声明时 加关键字mutable后,在常函数中依然可以修改
常对象:
声明对象前加const 称该对象为常对象
常对象只能调用常函数