关于C++中常量限定符const的详细介绍

很多人在刚开始学习C++编程的时候,很难搞清楚const与指针相结合的用法。基于此,我想结合《C++程序设计思想与方法》(翁惠玉版)参考资料来谈谈我自己的一点经验。

首先,const限定符是用来定义常量的,如 const int  Count=100,这也就表明 Count是一个常量,不可以再进行赋值等操作,类似于Count ++这种操作肯定会报错的。这是最基础的应用,当const与指针相结合使用的时候,情况比较复杂,主要分为以下三种:

【1】指向常量的指针。 具体形式如: const  int  *p=&x  这个时候我们在int 整型数据前面限定了const, 也就是说:p指针指向的地址里面只能存放常数,而且一旦确定之后就不能再改变。如果此时你进行 “ *p = 200 ” 操作,系统会提示报错:“左值是一个常量

 

【2】常指针。具体形式如:int  *const  p= &x;  这个表面指针p本身就是一个常量,只允许指向x的地址,存放的地址值不允许发生改变。这个时候x的值是可以改变的,但是p指针的指向地址值是永远不能改变的。

 

【3】指向常量的常指针。具体形式如: const  int  *const  p=&x; 这里面有两个const关键字。都表示是常量的意思。首先第一个常量限定符限制这个x的值必须是一个常整型,第二个常量限定符限制这个指针p必须指向特定的地址。

 

如果每次都要这样仔细来区分就比较困难,有没有更加简便的技巧呢?当然,对于常量限定符的使用在C++是有规律可循的。  const 这个常量关键字在哪一个语法单位前面,那么该常量限定符就限制了哪一个部分。 如“const  int ” const 在int前面,则表明变量值一定是一个常量整型;如 “*const  p”表明指针p 一定是一个常量指针,p所指向的地址不能发生改变。

 

这样我们对于C++中的常量限定符就有了一个更加清晰的认识了。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值