其实C++的学习过程中我们会发现,其实const的作用还是蛮大的,特别是在定义的时候~Xushine研究院就来总结下const的用法吧~

先看看为什么我们会用到const:使用const限定的成员函数不能改变类的成员变量的值,主要是为了保护成员变量不在该函数中被更改。

1:const用来定义对象(变量)

   const int buffSize=512;

   注意:1.定义时必须初始化

      2.const对象默认为文件局部变量,必须显示地指定为extern,但是非const对象默认为extern

       编译器这样做也是有好处的,比如说 const变量可以直接在头文件中定义,在要使用时,源文件

       直接包含头文件即可(普通变量只能定义一次,在头文件中声明)

2:指向const变量的指针

   const int *pi ;读作:pi为指向int类型const变量的指针  (从右向左读)

   注意:const int a=168;  pi=&a;

      1.在定义时可以不用初始化,因为对于pi来说并不是const的

      2.不能通过pi来改变a的值,但可以对pi重新赋值

      3.pi也可以非const变量,比如说 int a=5; pi=&5;但同样不能通过pi来改变a的值,可以用其他途径改变a的值

3:const指针

   int a=168;  int *const pi=&a;  读作:pi指向int类型变量的const指针(从右向左读)

   注意:1.定义时必须初始化,因为不能对常量赋值

      2.不能重新对pi赋值,就连 pi=pi也是错误的

4.以此类推:指向const对象的const指针

    const int a=168;  int *const pi=&a;

    注意:1.既不能改变pi的指向,也不能改变pi所指向对象的值

 

3 对 “再谈C++中的const限定符”的想法;

评论被关闭。