1 Star 0 Fork 0

CoderQi/cpp

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
const修饰的成员函数.cpp 836 Bytes
一键复制 编辑 原始数据 按行查看 历史
CoderQi 提交于 2023-04-03 21:48 +08:00 . 对象模型this指针(结)友元(friend)
#include<iostream>
using namespace std;
class Person
{
public:
void showPerson()const//(常函数)在成员函数后面加const,修饰的是this指针指向,让this指针指向的值也不可以修改
{
//this指针的本质:指针常量 指向不可以被修改
//当创建一个对象,调用对象的成员函数时则this指针指向该对象
/*m_A = 100;*/
this->m_B = 100;
}
void func()
{
}
int m_A;
mutable int m_B;//特殊的成员变量,即使在常函数中也可以修改这个值关键字(mutable)
};
void test01()
{
Person p;
p.showPerson();//this指向的就是p
}
//常对象
void test02()
{
const Person p;//对象前加const,变为常对象
/*p.m_A = 100;*/
p.m_B = 100;//被mutable修饰,可以修改
//常对象只能调用常函数
p.showPerson();
/*p.func();*///常对象不可以调用普通成员函数,因为普通成员函数可以修改属性
}
int main()
{
return 0;
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/programmercg/cpp.git
git@gitee.com:programmercg/cpp.git
programmercg
cpp
cpp
master

搜索帮助