当前位置: 首页 > news >正文

应用公园app官方下载国外网站谷歌seo推广

应用公园app官方下载,国外网站谷歌seo推广,广州做和改版网站的公司,wordpress 一直崩溃归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言​📝 人生就像骑单车,想保持平衡…

归纳编程学习的感悟,
记录奋斗路上的点滴,
希望能帮到一样刻苦的你!
如有不足欢迎指正!
共同学习交流!
🌎欢迎各位→点赞 👍+ 收藏⭐ + 留言​📝
人生就像骑单车,想保持平衡就得往前进!

一起加油!

目录

一、隐含的this指针:

二、this指针讲解:

三、说明: 

 四、注意:

五、共勉:


一、隐含的this指针:

#include<iostream>
#define PI 3.1415926
using namespace std;
class circle{private:int r;public:circle(int pr):r(pr){}double getarea();	
};double circle::getarea(){return PI*r*r;
}int main(){circle cir1(5);circle cir2(10);circle cir3(15);cout<<"半径为5的圆的面积为"<<cir1.getarea()<<endl;cout<<"半径为10的圆的面积为"<<cir2.getarea()<<endl;cout<<"半径为15的圆的面积为"<<cir3.getarea()<<endl;return 0;
}

二、this指针讲解:

        类的每个对象中都拥有数据成员的存储空间。上面的例题中定义了三个对象,因此有三个同样大小的空间存放三个对象的数据成员。但是,cir1、cir2 和 cir3 在调用函数 getarea()时都调用同一段函数代码段。

        当不同对象的成员函数引用数据成员时,如何保证引用的是指定对象的数据成员呢?

        对于cir1.getarea(),应该是引用对象 cir1 中的r,来计算圆 cir1的面积;而对于 cir2.getarea( )来说,则应该是引用对象 cir2 中r,来计算出圆 cir2 的面积。现在 ciri 和 cir2 调用的是同一个函数段,系统应该怎样使函数分别引用 cirl 和 cir2 中的数据成员?

        通过 this 指针可以解决这个问题在每一个成员函数中都包含一个特殊的指针,称为 this 指针。它是指向本类对象的指针。this 指针是一个特殊的隐含指针,它隐含在每一个类的非静态成员函数中(包括构造函数和析构函数),即类的每个非静态成员函数都有一个 this 指针指向调用这个成员函数的对象。当一个对象调用成员函数时,编译系统先将对象的首地址赋给 this 指针,然后调用成员函数。在成员函数存取数据成员时,隐含地使用 this 指针,这样成员函数就能够通过 this 指针来访问目的对象的数据成员。
        例如,当 cir1 调用成员函数 getarea 时,编译系统把对象 cirl 的起始地址赋给 this 指针。因此,在成员函数引用数据成员时,就按照 this 的指向找到对象 cirl 的数据成员。例如 getarea 数要计算 PI*r*r 的值,实际上是执行以下语句:

PI*this->r*this->r;

由于当前 this 指向 cir1,因此相当于执行以下语句:

PI*cir1.r*cir1.r;

这样就计算出圆 cir1 的面积。

        同样地,如果 cir2 调用成员函数 getarea,编译系统就把对象 cir2 的起始地址赋给成员函这样就计算出圆 cir1 的面积。getarea 的 this 指针,计算出来的结果就是 cir2 的面积。this 指针是隐式使用的,它是作为参数被传递给成员函数的。
成员函数 getarea 的定义如下: 

double circle::getarea(){return PI*r*r;
}

C++编译后把它处理为:

double circle::getarea(circle *this){return PI*this->r*this->r;
}

即在成员函数的形参表列中增加一个 this 指针。 

在调用该成员函数时,实际上是用以下方式调用的:

cirl.getarea(&cir1);

将对象 cir1的地址传递给形参 this 指针。然后按 this 的指向去引用对象的成员。

三、说明: 

         上述的这些过程都是编译系统自动实现的,程序设计者不必人为地在形参中增加this 指针,也不必将对象a 的地址传给 this 指针。同时,在需要时也可以显式地使用 this指针。

例如,在 circle 类的 getarea 函数中,下面两种表示方法都是合法并且相互等价的。

return (PI * r *r);				//隐含使用 this 指针
return (PI * this->r * this->r);//显式使用 this 指针

 四、注意:

         可以用*this 表示被调用的成员函数所在的对象,*this 就是 this 所指向的对象,即当前的对象上面的 return 语句也可写成:

return(PI*(*this).r * (*this).r);

*this 两侧的括号不能省略,不能写成*this.r 

五、共勉:

        以上就是我对类和对象——(6)友元的理解,希望本篇文章对你有所帮助,也希望可以支持支持博主,后续博主也会定期更新学习记录,记录学习过程中的点点滴滴。如果有不懂和发现问题的小伙伴,请在评论区说出来哦,同时我还会继续更新对类和对象的理解,请持续关注我哦!!! 

http://www.yidumall.com/news/21520.html

相关文章:

  • 光谷软件园企业网站建设公司上海aso优化公司
  • 网站设计简单网页seochinazcom
  • 汉口做网站做网站的好处
  • p2p倒闭 网站开发站外推广方式
  • wordpress怎么添加广告代码seo排名哪家正规
  • 网站备案 国外域名seo优化网站推广全域营销获客公司
  • 湖南基础建设投资集团网站yoast seo教程
  • 网站开发工作周记关键词的优化和推广
  • 铁法能源公司网站官网排名优化方案
  • wordpress php开发手册网站怎么优化到首页
  • 运城 网站制作广州最新疫情最新消息
  • 张家港做网站优化价格友情链接交换标准
  • 网站如何添加百度统计宣传推广方式
  • 上海专业网站营销收录查询站长工具
  • 怎样设计一个网站正规排名网站推广公司
  • 上海地区网站建设百度官网认证
  • wordpress浏览器不兼容鹤壁seo公司
  • 如何做网站赚流量钱seo技术服务外包公司
  • 房地产开发公司排名seo怎样
  • c 做asp.net网站友情链接网自动收录
  • 东莞常平学校网站建设营销型网站建设多少钱
  • 如何学做网站全套教程长春网站建设开发
  • 长沙网站建设网站在线推广
  • 商务网站建设报告书seo教程之关键词是什么
  • 重庆机有哪些网站建设公司德州seo整站优化
  • 网站后台用什么做重庆百度推广优化
  • 用asp做的网站如何运行网站推广是什么意思
  • 做企业网站哪家公司好哪里做网络推广
  • wordpress去除谷歌字体惠州百度seo排名
  • 在线咨询 1 网站宣传推广游戏赚钱的平台