(1)防止被修饰的成员的内容被改变。
(2)修饰类的成员函数时,表示其为一个常函数,意味着成员函数将不能修改类成员变量的值。
(3)在函数声明时修饰参数,表示在函数访问时参数(包括指针和实参)的值不会发生变化。
(4)对于指针而言,可以指定指针本身为const,也可以指定指针所指的数据为const,const int *b = &a
或者int* const b = &a
修饰的都是后面的值,分别代表*b
和b
不能改变 。
(5)const
可以替代c语言中的#define
宏定义,好处是在log中可以打印出BUFFER_SIZE
的值,而宏定义的则是不能
#define BUFFER_SIZE 512
const int BUFFER_SIZE = 512;
注意:const数据成员必须使用成员初始化列表进行初始化。