常函数:
1.成员函数后加const,称为常函数。
2.常函数内不可以修改成员属性。
3.成员属性声明时加关键字mutable后,在常函数中依然可以修改。
常对象:
1.声明对象前加const,称为常对象。
2.常对象只能调用常函数。
#include<iostream>
using namespace std;
class WLM
{
public:
//this指针的本质是一个指针常量,指针的指向不可修改。
//如果想让指针指向的值也不可修改,需声明常函数,即加一个const
//常函数
void func() const
{
//this->m_a =100; //错误
this->m_b = 100;
}
void func2()
{
}
int m_a;
mutable int m_b; //特殊变量,即使在常函数中也可以修改这个值
};
//常对象
void test1()
{
const WLM wlm;
//wlm.m_a = 100; //错误
wlm.m_b = 100; //特殊变量,即使在常对象中也可以修改这个值
wlm.func(); //常对象只能调用常函数
//wlm.func2(); //错误
}
int _tmain(int argc, _TCHAR* argv[])
{
test1();
system("pause");
return 0;
}
原创文章,作者:,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/277736.html