类的常量成员函数(const member function)是类的成员函数,其定义的方式是将const关键字放在成员函数参数列表之后。要说明常量成员函数的用途,首先从类成员的隐式参数this说起。
1 this参数
1.1 this参数介绍
struct A {
int a;
A(int param)
{
a=param;
}
int geta()
{
return a;
}
};
以上代码自定义了类A,该结构包含了自定义的构造函数和geta()成员函数。
A ca(1);
int b = ca.geta();
以上代码定义了A的对象ca,并通过ca调用了A的成员函数geta()。需要注意的是,此时的geta()函数实际上是对象ca调用的,返回的a值实际上隐式地返回ca.a。
成员函数时通过一个名为this的隐式参数来访问调用它的那个对象,当通过某个对象调用成员函数时,实际上就是将该对象的地址赋值给隐式的