码迷,mamicode.com
首页 > 其他好文 > 详细

初识const

时间:2015-08-28 15:09:20      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

修饰常指针
const int *A; //const修饰指向的对象,A可变,A指向的对象不可变
int const *A; //const修饰指向的对象,A可变,A指向的对象不可变
int *const A; //const修饰指针A, A不可变,A指向的对象可变
const int *const A;//指针A和A指向的对象都不可变

 

常量与指针

 常量与指针放在一起很容易让人迷糊。对于常量指针和指针常量也不是所有的学习C/C++的人都能说清除。例如:

    const int *m1 = new int(10);

    int* const m2 = new int(20);

在上面的两个表达式中,最容易让人迷惑的是const到底是修饰指针还是指针指向的内存区域?其实,只要知道:const只对它左边的东西起作用 唯一的例外就是const本身就是最左边的修饰符,那么它才会对右边的东西起作用。根据这个规则来判断,m1应该是常量指针(即,不能通过m1来修改它所 指向的内容。);而m2应该是指针常量(即,不能让m2指向其他的内存模块)。

初识const

标签:

原文地址:http://www.cnblogs.com/sunnydaybyday/p/4766423.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!