概念:this实际上是成员函数得一个形参,在调用成员函数时将对象的地址作为实参传递给this。this这个形参是隐式的,并不会出现在代码中,而是在编译阶段由编译器隐式地将其添加至参数列表中。
this使用的基本原则:若代码不存在二义性隐患,就不必使用this指针
class Human { public: void setName(char *name); void setAge(int age); void show(); private: char *name; int age; }; void Human::setName(char *name) { this->name = name; } void Human::setAge(int age) { this->age = age; } void Human::show() { cout << this->name << "的年龄是" << this->age << endl; } void main() { Human *zjm=new Human; zjm->setName("小明"); zjm->setAge(18); zjm->show(); system("pause"); return; }
this只能用在类的内部(因为this本质上是成员函数的局部变量),通过this可以访问类内的所有成员(包含private、protected)
成员函数的参数与成员变量重名时,要用this进行区分。
注意:this是一个指针,要用->来访问成员变量或成员函数
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?