C++中的const关键字的用法

1.const用于修饰普通变量,表示常量,不建议修改,某种程度上不允许修改(其实也是可以修改的)

  指针常量 :指针(指向的变量的值)自身是一个常量,说明不能改变自身的指向  int* const p=&a;
  常量指针 :指向常量的指针,指针可以修改指向 但是不能修改指向的变量的值  const int* p;
面试必杀技:
 const出现在*的左边    是常量指针
 const int num = 19;
 const int * p = #//指向常量的指针

常见的面试题中,经常会拿如下的例子来糊弄人:

int main()
{
    int a = 10;
    int b = 20;
    const int* p;//const *p,可以不用初始化,表示*p是常量

    int* const p1 = &b;//const p,必须初始化,否则报错,表示p是常量地址

    int* pp1 const = &a;//报错,没有这种写法,不同于常函数:int fun()const;

    const int* const p2=&a;//const int* 和int const*是一样的,且必须在定义时初始化,因为const直接修饰指针p2 

    int const* const p3=&a;//p2和p3是一样效果,只需要考虑const在*的左边还是右边,不受int 的影响

}
原文地址:https://www.cnblogs.com/ttss/p/4148337.html