C++学习第八十三篇
2021/12/4 12:17:13
本文主要是介绍C++学习第八十三篇,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
/* * this指针概念 * 在C++中成员变量和成员函数是分开存储的 * 每一个非静态成员函数只会诞生一份函数实例,也就是说多个同类型的对象会共用一块代码 * 那么问题是:这一块代码是如何区分哪个对象调用自己的呢? * c++通过提供特殊的对象指针,this指针,解决上述问题。 * this指针指向被调用的成员函数所属的对象 * this指针是隐含每一个非静态成员函数内的一种指针,不定义需要,直接使用即可 * this指针的用途: * 1、当形参和成员变量同名时,可用this指针来区分 * 2、在类的非静态成员函数中返回对象本身,可使用return *this */ #include<iostream> #include<string> using namespace std; class Person { public: Person(int age) { //1、当形参和成员变量同名时,可用this指针来区分 this->age = age; //age = age;//编译器区分不了age是形参还是成员变量 } Person& personAddPerson(Person p)//要用引用返回值类型 { this->age += p.age; //返回对象本身 return *this; } int age; }; void test01() { Person p1(10); cout << "p1.age = " << p1.age << endl; Person p2(10); p2.personAddPerson(p1).personAddPerson(p1).personAddPerson(p1); cout << "p2.age = " << p2.age << endl; } int main() { test01(); system("pause"); return 0; }
这篇关于C++学习第八十三篇的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-04el-table 开启定时器下,表格的选中状态会消失是什么原因-icode9专业技术文章分享
- 2024-10-03如何安装和初始化飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03如何安装 App 并连接到飞牛 NAS?-icode9专业技术文章分享
- 2024-10-03如何安装飞牛 TV 并连接到影视服务器?-icode9专业技术文章分享
- 2024-10-03如何在PVE和ESXI上安装飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS安装系统异常情况处理-icode9专业技术文章分享
- 2024-10-03飞牛NAS如何创建存储空间?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS硬盘会自动休眠吗?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何安装飞牛影视和创建媒体库?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何为家人朋友开通影视账号?-icode9专业技术文章分享