1 常量指针:指的是指向常量的指针,指针的值能够变,可是不能修改指向的值。c++
用来限定指针不能修改指向的值。好比:函数
int a;spa
const int *p;(const可在int以后)指针
p = &a;容许class
*p = 2;不容许test
2 指针常量:指的是指针的常量,不能够改变指针的值,但能够修改指向的类容。变量
用来限定不能修改指针指向的地址。好比:引用
int a,b;方法
int *const p = &a;(必须初始化)co
p = &b;不容许
*p = 2;容许
一般经过看 const在*的左边仍是右边来确认是常量指针仍是指针常量
3 指向常量的指针常量
int a = 1;
const int * const p = &a;
注意p必须初始化。否则既不能修改p的值,也不能修改p指向的值
4 c++成员函数声明为const,代表该函数不能修改为员变量。声明以下
class A
{
int bb;
public:
int set()const;
};
int A::set()const
{
bb = 1;//此处报错
}
5 成员函数的返回值能够是引用,但只能返回成员变量。此时,必需要令返回值是const
6 void test(const A &a){},假设有这样一个函数,那么在test函数内部只能调用a的const方法,由于非const成员函数可能会修改变量