const的运用

const和变量 不能改变变量的值

const int a = 8; a = 10; //错误

const和指针 常量指针:不能通过指针修改所指向变量的值。但是指针可以指向别的变量。
int a = 8; const int *p = &a; *p = 20; //错误 int b = 20; p = &b;

指针常量:不能存在新的地址,不能指向别的变量。但是可以通过修改所指变量的值。
int a = 8; int *const p = &a; *p = 20; int b = 20; p = &b; //错误

const和函数 const int func(const int a) const
  1. 修饰返回值const int func()
    不能修改返回值
  2. 修饰函数形参int func(const int a)
    不能修改形参a
  3. 修饰类的成员函数int func() const
    函数体内不能修改成员函数的值
const和对象 【const的运用】不能改变对象的值,和const修饰变量类似,即不能调用对象里修改变量的成员函数,只能调用只读函数(const函数,例如int func() const)

    推荐阅读