c++中const关键字使用的总结

const关键字的总结 :

作用 说明 参考代码 注意
定义常量 常量不可修改

const int val = 5;

int const val = 5;

与#define宏定义常量的区别:

(1)const常量具有类型,编译器可以进行安全检查,推荐使用。

(2)#define宏定义只是简单的字符串替换。

修饰指针  

(1)const int* p;  //指针p指向的内容是常量,不可改变。

(2)int* const p;  //指针本身是一个常量,不可改变。

(3)const int* const p;  //指针本身和指向的内容都是常量,都不可以改变。

区分方法,*p代表对象内容,p代表指针本身,看const修饰的是哪个。
在函数中使用const 修饰函数参数

void function(const int Var);  //表明参数在函数体内不能被修改,但此处没有任何意义,Var本身就是形参在函数内不会改变

包括传入的形参是指针也是一样。

(1)使用引用参数,可以防止创建副本,减少内存开销,同时可以在函数中对引用参数修改,函数结束后,引用参数的修改仍然存在。

(2)如果为了防止对引用参数进行修改,可以对该参数加上const关键字。

修饰函数返回值   与修饰普通变量和指针意义差不多,很少使用。
在类中使用const 修饰类成员变量

 class A
    {               
        const int nValue;       
     } 

(1)成员常量不可被修改。

(2)只能在初始化列表中被赋值。

  修饰类成员函数

 class A
    {
       void function()const; 
    }

(1)常成员函数, 它不改变对象的成员变量.      代表只读函数,增加程序的可读性。                 

(2)不能调用类中任何非const成员函数。

参考:https://www.cnblogs.com/JiFfeiYu/p/6697195.html

猜你喜欢

转载自blog.csdn.net/liuzubing/article/details/81181901