目录
1.const成员
定义:
将const修饰的“成员函数”称之为const成员函数,const修饰类成员函数,实际修饰该成员函数
隐含的this指针,表明在该成员函数中不能对类的任何成员进行修改。
这个const是加
在函数的末尾,
修饰this指针指向类的成员,因为this指针是隐藏的参数不能写出来,所以规定在函数后面加const修饰this指针指向的成员。
注意:
1.在一个类里面
const成员函数里面不可以调用
非const的成员函数,因为const调用的时候会涉及
权限放大,本质就是,把const参数,传给了一个非const参数。
![](https://i-blog.csdnimg.cn/blog_migrate/64ee39c80dfb89007fa85caa9bfa72ed.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d9be1c7e9a2070749e25d3e1108b4368.png)
2.const可以构成
函数重载
d1调用的是print(),d2调用的就是 print()const
![](https://i-blog.csdnimg.cn/blog_migrate/3f3aa431ab7585abe128f17c8f754b65.png)
2.取地址的重载
解释:
因为自定义类型是不能直接用操作符的,之所以能直接取出类的地址是因为,在类的内部自动生成了,取地址操作符的重载。
这个基本没什么用,除非不想让别人看到地址,直接给返回值置为 0 ,或者更坏一点,返回一个野指针,就像这样。