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限定符用法汇总的主要内容,如果未能解决你的问题,请参考以下文章