c++ const 修饰变量位置含义

c++ const 修饰变量位置含义

const 修饰成员变量

const修饰指针变量时:

  1. 只有一个const,如果const位于*左侧,表示指针所指数据是常量,也就是指向常量的指针,不能通过解引用修改该数据;指针本身是变量,可以指向其他的内存单元。

    const int* a; //表明a所指向的量为常量
    
  2. 只有一个const,如果const位于*右侧,表示指针本身是常量,也就是常指针,不能指向其他内存地址;指针所指的数据可以修改。

    int* const a; //表明a是常量,不能更改a的指向,数据可以更改
    
  3. 两个const*左右各一个,表示指针和指针所指数据都不能修改。

    const int* const a;//a是指向常量的常指针
    

参考

大佬博客

欢迎评论交流!
原文地址:https://www.cnblogs.com/alking1001/p/11474922.html