一.常函数:
(一)成员函数后面加const后我们成这个函数为常函数

(二)常函数内不可以修改成员函数属性

额外补充:
this指针的本质,是指针常量,指针指向的是不可以修改的

但是指针指向的值是可以修改的
在此案例中,this可以等于person *const this,因此,const person * const =void showperson() const,在成员函数后面加const,本质上是修饰this指针,让指针所指向的值也不可以修改
(三)成员属性声明时加关键字mutable,在常函数中依然可以修改,在常对象中亦可以修改

二.常对象
(一)声明对象加const称该对象为常对象,常对象不可以修改属性

(二)常对象只能调用常函数,不可以调用普通成员函数,因为普通成员函数可以修改属性,这违背了常对象得基本原则
1.常对象调用常函数

2.常对象调用普通成员函数
