c++中const修饰符

const 数据类型 变量名 = 常数值

  1. 常量一旦被定义和初始化就不能在程序中被改变。
  2. 建议用const取代#define定义常量
    #define PI 3.14159
    两者定义的常量不同,const常量具有数据类型,占用存储单元,可有编译器进行类型检查,但不能被修改,而宏常量是在预编译时进行字符置换,把程序中出现的PI都替换为3.14159,PI不是变量,不具有数据类型,在置换时容易出错。
  3. const与指针
    1. 指向常量的指针

      int u = 3;
      const int* p = &u;
      

      可以保存变量或者常量的地址,并且限制指针的访问方式为只读,即 不能通过指针修改所指对象的值,但是可以改变指针的方向。

      1. 常量型指针
      int u = 20;
      int* const p1 = &u;
      

      常量型指针定义时必须进行初始化,然后指针的值不再改变,但是如果常量型指针所指的是变量,则可以通过该指针修改所指变量的值

      1. 指向常量的常量型指针
      const int* const p1 = &u;
      

      此时指针的值和所指的对象值都不能改变。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值