带你了解C++this指针的用法及其深究

这篇文章主要介绍了C++中this指针的用法,对初学者而言是非常重要的概念,必须加以熟练掌握,需要的朋友可以参考下,希望能给你带来帮助

带你了解C++this指针的用法及其深究,久久派带你了解更多相关信息。

目录
  • 前言
  • 一、this指针是个什么东东,重要吗?
  • 二、案例理解
    • 主要的用途
  • 总结

    前言

    今天,码神像一个新车手一样,尝试着用模板来更新一下,不要建议哦,毕竟没有放弃爱情的拓海也不是真正的车神,哈哈,发车了

    一、this指针是个什么东东,重要吗?

    首先,我以码神的名义起誓,this指针绝对重要,尤其是对于c++这个面向对象编程的语言来说!

    有的码手可能要说了:你说重要就重要?那我还说不重要呢?

    这个么,空口无凭,我现在来举一个例子:

    我们知道对于一个类来说,要有很多工作要做,其中类的成员函数可以访问类的数据(限定符只是限定于类外的一些操作,类内的一切对于成员函数来说都是透明的),那么成员函数如何知道哪个对象的数据成员要被操作呢,这时c++中的this指针就应用而生了

    注:

    每个对象都拥有一个指针:this指针,通过this指针来访问自己的地址。this指针不是对象的一部分,故sizeof不会体现出this指针的大小,this指针的类型取决于使用this指针的成员函数类型以及对象类型。

    带你了解C++this指针的用法及其深究

    二、案例理解

    代码如下(示例):

    #include<iostream>using namespace std;class Person{public:	Person(int age)	{		this->age=age;		//this指针指向被调用的成员函数所属的对象	}	int age;	//int m_Age;	void PersonAddAge(Person &p)	{		this->age += p.age;		//this指向篇的指针,而*this指向的是篇这个本体		return *this;	}}//解决名称冲突void text01(){	Person p1(18);	cout<<\"p1age:\"<<p1.age<<endl;}//返回对象本身用*thisvoid text02(){	Person p1(10);	Person p2(10);	p2.PersonAddAge(p1);	cout<<\"p2的age:\"<<p2.age<<endl;//20	p2.PersonAddAge(p1).PersonAddAge(p1);	cout<<\"p2的age:\"<<p2.age<<endl;//30	//链式编程思想}int main(){	text01();	text02();	return 0;}

    主要的用途

    当形参和成员变量同名时,可用this指针来区分

    在类的非静态成员函数中返回对象本身,可使用return *this

    总结 通过上面我们知道在C++中成员变量和成员函数是分开存储的每一个非静态成员函数只会诞生一份函数实例,也就是说多个同类型的对象会共用一块代码c++通过提供特殊的对象指针,this指针,解决上述问题。this指针指向被调用的成员函数所属的对象this指针是隐含每一个非静态成员函数内的一种指针this指针不需要定义,直接使用即可

    最后:this指针指向被调用的成员函数所属的对象

    总结

    本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注趣讯吧的更多内容!

    版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/15296.html

    (0)
    nan
    上一篇 2021-08-19
    下一篇 2021-08-19

    相关推荐

    • 好看的电子书排行榜前十(好看的电子书完本推荐)

      今天,给大家推荐十本不小白不烂尾的完本小说推荐,爽点满满,值得熬夜通宵看过瘾1、临渊行,作者:宅猪,341.9万字简评:大神宅猪的又一本玄幻力作,小说讲述了一个从小生活在无人区鬼神小镇的瞎子少年,一次被路过的高人传功后睁开双眼,发现自己所处之地只有

      2022-01-07 行业动态
      0
    • 科研成果和专利信息显示:美国专家是“合成冠状病毒第一人”

      多项科研成果和专利信息显示,美国专家拉尔夫·巴里克是“合成冠状病毒第一人”。

      2021-08-19
      0
    • 许家印房产降价(许家印上亿豪宅打折出售)

      近日,在社交平台上流传着一则“许家印广州珠江新城的豪宅出售”信息。1月3日,九派新闻记者向金碧华府小区附近的链家中介小梁求证此事,她表示该房产是在出售中,确实属于许家印所有。网传截图显示,该房产为珠江新城金碧华府25楼复式豪宅,面积753平、市场价1

      2022-01-07
      0
    • 盗墓笔记(陈文锦进入陨石后发生了什么)

      陈文锦最后一次出场是在《谜海归巢》一部中,她钻进了那块巨大的陨石,之后就再也没有出现过。一直到南派三叔最近新写的《极海听雷》,才再次提到了陈文锦,算是从侧面给出了陈文锦的结局。陈文锦等人服用了含有尸蟞王的丹药后,在获得长生的同时,身体会逐渐开始尸化,

      2022-01-07
      0
    • 什么才是选购笔记本外接显示器的正确姿势?

      随着无线网络的普及和移动化办公趋势的增加,笔记本电脑的市场占有率近几年的上升趋势明显。虽说笔记本拥有高便携的优点,但该优点的背后,是性能弱、屏幕小,发热大等牺牲。好在市场中有极为丰富的外设产品,为笔记本电脑用户带来更好的使用体验。键盘打字不舒服,买个机械键盘;触控板反人类,买个鼠标替代;显卡性能弱,显卡扩展坞了解下;发热大,笔记本散热器来降温;显示屏幕小,…

      2021-08-10 行业动态
      0
    • 双11与双十二哪个便宜,多方面浅析双十一和双十二的优惠政策

      双十一和双十二作为电商行业中的关键节日,在这两天里面,各大电商平台都会疯狂去进行宣传,各类型的活动让人眼花缭乱,很多用户在计算优惠政策的时候都非常头疼,那么到底双11与双十二哪个便宜?数字营销网以多方面浅析双十一和双十二的优惠政策!一、双十一

      2022-01-07
      0

    发表回复

    登录后才能评论