const成员(类和对象)

Posted The August

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了const成员(类和对象)相关的知识,希望对你有一定的参考价值。

const修饰类的成员函数

d2.print();//d2的类型是const Date*  , d2传参,d2的权限被放大

void print()const == void print(const Date* this)//编译器对const成员函数的处理

注:将const修饰的类成员函数称之为const成员函数,const修饰类成员函数,实际修饰该成员函数隐含的this指针,表明在该成员函数中不能对类的任何成员进行修改。

总结:
成员函数加const,变成const成员函数是有好处的,这样const对象可以调用,非const对象也可以调用
不是所有的成员函数都需要加const,要看函数功能。例如:operator +=()(修改型成员函数)
如果函数是一个只读型,那最好加上const。eg:print()
如果要修改成员变量就不加,不修改最好加上。

以上是关于const成员(类和对象)的主要内容,如果未能解决你的问题,请参考以下文章

深入理解C++类和对象(下)

随笔--类和对象初阶问题总结(面试)

C/C++类和对象类中常用的关键字总结

C++类和对象下

C++类和对象(构造函数析构函数拷贝构造函数赋值运算符重载Const成员)详细解读

C++类和对象(构造函数析构函数拷贝构造函数赋值运算符重载Const成员)详细解读