const用法小结

1.const Plemtype +变量名
    用const限定符定义对象的时候,该对象是不可修改的,因此必须在定义时初始化,如:
     const int a = 5;
     const int b;//erro     
2.定义const类型引用
    const类型的引用必须指向const类型对象,如:
    int a;
    const int b;
    const int &r_a = a; //erro 
    int &r_b = b; //erro 因为一般引用可以修改,规定普通引用不可以绑定const对象
    const int &r_b = b; //ok
3.指向const对象的指针
    (1)指向const对象的指针必须也具有const属性,如
         const int a;
         int *p = &a;//wrong
         const int *p = &a;//ok,不能通过*p修改a的值,但是p可以指向其他int型对象,包括非const的,但不可通              过其改变该对象值
4.const指针
    (1)int a = 0;
    int *const p = &a;//p不可再指向其他对象,值不可修改,因此需要定义时初始化
    (2)能否通过p改变a的值取决于a本身,此处可以。如果a为const对象,则不可以
5.指向const对象的const指针
    const int a = 0;
    const int *const p = &a;//既不可以修改a,也不可以修改p指向
Attention:
    const变量为程序的局部变量, 原因是const变量可以定义在头文件中。而对于其他一般对象,定义应该在源文件中,继而在头文件使用extern声明。当const对象定义在file1.c中,可通过指定其为extern,然后在其他文件访问。如:
    //file1.cpp
    const int a = 10;
    //file2.cpp
    extern const int a;
    for(int i = i;i<a;i++)
    {……}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值