const限定符用法汇总

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了const限定符用法汇总相关的知识,希望对你有一定的参考价值。

const限定符限定变量的类型是一个常量,对象一旦创建后其值就无法改变,所以const对象必须初始化。

 

初始化  

const int i = get_size();     //运行时初始化
const int j = 42;                //编译时初始化

int k = 40;
const int ck = k;                //k的值 被拷贝给了ck

const对象的作用域 

默认情况下,const对象仅在文件内有效.

如果要在多个文件中共享const对象,必须在变量的定义之前添加extern关键字。 

//file_1.cc定义并初始化了一个常量,该常量能被其他文件访问
extern const int bufsize = fcn();  //这里必须加上extern,别的文件才可以用

//file_1.c 头文件
extern const int bufsize; //与file_1.cc中定义的bufsize是同一个

const的引用  

 因为引用所代表的就是另外一个对象的,别名而已,所以考虑引用所对应的对象是否被改变即可!!const对象必须不能改变!

const int ci = 1024;
const int &r1 = ci;    // 正确:引用及其对应的对象都是常量
r1 = 42;                   // 错误:r1 是对常量的引用
int &r2 = ci;             // 错误:试图让一个非常量引用指向一个常量对象
                               //试想,c1的值不可改变,但r2的值可改变,那么改变r2就是改变c1,显然不对             

  

以上是关于const限定符用法汇总的主要内容,如果未能解决你的问题,请参考以下文章

2.4 const限定符

const限定符

2.4 const限定符

深入理解C++的const限定符

const限定符

const限定符