const意味着 “只读”
const有什么含义?
1)只读
2)使用关键字const也许能产生更紧凑的代码
3)使编译器很自然地保护那些不希望被改变的参数,防止其被无意的代码修改
const 修饰成员变量
const int a;
int const a; //a是一个常整型的数
const int *a; //a是一个指向常整型数的指针(值不能改)
int * const a; //a是一个指向整型数的常指针(指针不能改)
扫描二维码关注公众号,回复:
3367436 查看本文章
int const *a const; //都不能改
const 修饰函数参数
传递过来的参数在函数内不可以改变
const 修饰成员函数
1)const修饰的成员函数不能修改任何的成员变量(mutable修饰的变量除外)
2)const成员函数不能调用非const成员函数,因为非const成员函数可以修改成员变量
const 修饰函数返回值
1)指针传递
如果返回const data ,返回值也必须赋给const data。因为指针指向的数据是常量不能修改。
2)值传递
函数返回值采用值传递方式,会把函数的返回值复制到外部临时的存储单元中,加const修饰没有任何价值。