1 //this 指针的使用
2 //1 解决名称冲突
3 //2 返回对象本身 用 *this
4
5 #include <iostream>
6 #include <string>
7 using namespace std;
8
9 class Person
10 {
11 public:
12 Person(int age)
13 {
14 //this指针指向 被调用的成员函数 所属的对象
15 this->age = age;
16 }
17 Person & PersonAddAge(Person &p)
18 {
19 this->age += p.age;
20 //this指向P2的指针 而*this指向的就是P2这个对象的本体
21 return *this;
22 }
23
24 int age;
25 };
26 //1 解决名称冲突
27 void test01()
28 {
29 Person p1(18);
30 cout << "p1的年龄为: " << p1.age << endl;
31 }
32
33 //2 返回对象本身 用 *this
34 void test02()
35 {
36 Person p1(10);
37 Person p2(10);
38
39
40 //链式编程思想
41 p2.PersonAddAge(p1).PersonAddAge(p1).PersonAddAge(p1).PersonAddAge(p1);
42
43 cout << "02==p1的年龄为: " << p1.age << endl;
44 cout << "02==p2的年龄为: " << p2.age << endl;
45 }
46
47 int main()
48 {
49 //test01();
50 test02();
51 }

最新文章

  1. Python基础语法,基本数据类型及相关操作
  2. 初识ios自动化(一)
  3. 测试卡尔曼滤波器(Kalman Filter)
  4. bootstrap 学习笔记
  5. Photoshop:建议设置
  6. Android 高级UI设计笔记05:使用TextView实现跑马灯的效果
  7. HDU-1874 畅通工程续 (最短路径启蒙题)
  8. phpDesigner 工具快捷键巧用
  9. [原创]零基础R语言教程---第二课---R语言入门
  10. c++中宽字节表示
  11. Spring+SpringMVC+MyBatis深入学习及搭建(十三)——SpringMVC入门程序(二)
  12. Hadoop(三)手把手教你搭建Hadoop全分布式集群
  13. vue,vuex的后台管理项目架子structure-admin,后端服务nodejs
  14. Java基础12-工具类;变长参数;IO
  15. DELPHI中完成端口(IOCP)的简单分析(3)
  16. mac brew update 报错
  17. selenium之测试卫星资料页面操作(元素遍历)
  18. TypeScript学习笔记(八):1.5版本之后的模块和命名空间
  19. 2018.11.01 NOIP训练 树的排列(树形dp)
  20. poj 2449 k短路+A*算法

热门文章

  1. [源码解析] 深度学习分布式训练框架 horovod (10) --- run on spark
  2. ES服务的搭建(八)
  3. Linux-NFS存储
  4. 21、nginx之ngx_http_proxy_module模块
  5. Android系统编程入门系列之界面Activity绘制展示
  6. CentOS-yum安装Nginx
  7. MySql:Navicat 连接不上虚拟机上的mysql容器
  8. Spring Boot中的那些生命周期和其中的可扩展点(转)
  9. yum的卸载和安装
  10. VS Code 与 ESP32 官方SDK配置