1.const:常量声明,类常成员函数声明。
const和static不可同时修饰类成员函数,const修饰成员函数表示不能修改对象的状态,static修饰成员函数表示该函数属于类,不属于对象,二者相互矛盾。const修饰变量时表示变量不可修改,修饰成员函数表示不可修改任意成员变量。难记点(我是感觉很SB,除了面试,实际工作中完全没遇到):
const char* p = new char(‘a’): 表示p指向的内容不可修改但是p可修改。p = ‘b’; // 错误 p = p2;// 正确指针可修改
char const p = new char(‘a’): 表示p不可修改,但是p指向的内容可修改。*p= ‘b’;// 正确 p = p2;//错误
20210427-C++
![](https://img-home.csdnimg.cn/images/20240711042549.png)