1.const的作用:定义常变量
举例说明:
int main()
{
int a=10;//此时a这个变量是可读可写的
int b=a ;//此时a也可以做右值
a=100 ;//此时a也可以做左值 (左值:放在赋值符号左边的称为左值,用到写权限)
const int ca=100;
ca=200; //此时编译器会报错,因为定义了ca是一个只读变量,只读变量不能做左值
return 0;
}
2.数据类型对于const来说是透明的(const int 等同于int const,实现功能相同)
例如:int const cc = 100;//此时cc和上面ca并无区别
3.const直接修饰的内容不能够做左值
int main()
{
int a=10;
int b=20;
int const ca = 100;
int const cd = 200;
int *p=&a;
const int *cp1 = &a;
cp1=&b;//可以
*cp1=200;//不可以
int *const cp2 = &a;
cp2=&b ; //不可以
*cp2 = 200 ; //可以
}
4.const 权限的传递:同等或者缩小的传递合法,放大传递非法