C/C++中const的正确使用

来源:互联网 发布:菲律宾退休移民知乎 编辑:程序博客网 时间:2024/05/09 16:50

1.声明并初始化一个常变量:const int a=12;//a的值不能改变

2.指向常量的指针变量:const 类型名 *指针变量名;

int a=12,b=15;

const int *p=&a;//定义了p为指向整型变量a的const指针变量

*p=15;//试图通过p改变它指向的对象a的值,非法

p=&b;//p改为指向b,合法

但是要注意:a=15;//直接改变a的值,合法

3.常指针变量:类型名 *const 指针变量名;

char *const p1="China";//p1是字符指针变量,其指向不能改变

p1="Canada";//试图改变p1的指向,不合法

还有:int a=4;int b=6;

int *const p2=&a;//指定p2只能指向变量a(必须在定义时初始化,指定其指向)

p2=&b;//试图改变p2的指向,不合法

4.指向常量的常指针:const 基本类型名1 *const 指针变量名;

int a=10;int b=20;

const int *const pt=&a;//用了两个const

pt=&b;//试图改变指针变量pt的值,错误

*pt=30;//试图通过pt改变a的值,错误

a=30;//直接改变a的值,合法(这里也是一个易错点)


综上:const跟在谁后边谁就不能变(但是注意上边那行,这是辅助理解思维)!!

0 0
原创粉丝点击