标签:
const
默认状态下const对象仅在文件内有效,添加extern关键字可以在多个文件共享
const 引用:
可以把引用绑定到const对象上,对常量的引用不能被用作修改它所绑定的对象
const int ci =1024; const &r = ci;//正确 r = 3;//错误 int &s = ci;//错误,可以通过s来修改常量ci 的值,显然是错误的
int i =42;
const int &r1 = i;//正确
int &r1 = 42; //错误
const int &r2 = 42;//正确 r2是一个常量引用
const int &r3 = r1 * 2; //正确
int &r4 = r1 *2;//错误
const 指针:
指针式对象而引用不是,允许把指针本事定为常量
int e = 0;
int *const cur = &e;
从右往左 cur离const最近所以是个常量, const前面有*,所以是常量指针,常量指针指向了一个int对象
顶层const:
顶层const表示指针本身是个常量,可以表示任意的对象是常量
底层const表示指针所指的对象是个常量
int i =0; int *const p1 = &i; //顶层const const int ci = 42; //顶层const const int *p2 = &ci; //底层p2, 允许改变p2的值
const int &r = ci; //用于声明引用的const都是底层const
标签:
原文地址:http://www.cnblogs.com/luxiao/p/5666720.html