-
const修饰基本数据类型
const可以在类型前,也可以在类型后,表示该变量不能改变
const int n = 1;
int const n = 1;
- const修饰指针
(1)常量指针
指针指向可以改,但指针指向的值不能改
int a = 1;
int b = 2;
const int* p = &a;
p = &b; //right
*p = 2; //error
(2)指针常量
指针指向不可以改,但指针指向的值可以改
int a = 1;
int b = 2;
int* const p = &a;
*p = 2; //right
p = &b; //error
(3)const即修饰指针又修饰常量
指针指向不可以改,指针指向的值也不可以改
int a = 1;
int b = 2;
const int* const p = &a;
*p = 2; //error
p = &b; //error
-
const成员函数
该成员函数不能修改成员变量的值
void member_func() const {}