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

霸州网站设计菏泽网站建设公司

霸州网站设计,菏泽网站建设公司,中铁建发展集团有限公司,网络搭建难吗归纳编程学习的感悟#xff0c; 记录奋斗路上的点滴#xff0c; 希望能帮到一样刻苦的你#xff01; 如有不足欢迎指正#xff01; 共同学习交流#xff01; #x1f30e;欢迎各位→点赞 #x1f44d; 收藏⭐ 留言​#x1f4dd; 人生就像骑单车#xff0c;想保持平衡… 归纳编程学习的感悟 记录奋斗路上的点滴 希望能帮到一样刻苦的你 如有不足欢迎指正 共同学习交流 欢迎各位→点赞 收藏⭐ 留言​ 人生就像骑单车想保持平衡就得往前进 一起加油 目录 一、隐含的this指针 二、this指针讲解 三、说明  四、注意 五、共勉 一、隐含的this指针 #includeiostream #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.hkea.cn/news/14305357/

相关文章:

  • 建设通网站有建筑公司名录大全大连建站
  • 网站网络营销怎么做企业网站平台
  • 做网站分辨率设置多少网络科技公司起名字大全免费
  • 网站界面设计的步骤南京最好的网页制作公司
  • 怎么做淘宝网站赚钱雅布设计中国分公司在哪里
  • 微信公众好第三方网站怎么做重庆移动网站建设
  • 做个小程序电子商务seo是什么意思
  • 东营网站建设服务电话安阳网络教研平台官网
  • 做网站一定要买服务器么华为手机价格大全
  • 做外贸怎样打开国外网站中美今天最新消息
  • 网站建设邮如何做网站推广 求指点
  • 在哪找人做网站万网
  • 做钻石的网站做网站需要的公司
  • 获取网站访客qq号码邯郸网站改版找谁做
  • 网站文本编辑器北京死亡病例最新消息
  • 济南商城网站建设多少钱织梦网站入侵
  • 高端网站建设与制作推广运营怎么做
  • wordpress指定目录文章一键优化大师
  • 高校门户网站建设问题音乐网站需求分析
  • 资讯网站的优势济南建站都选企汇优先做后付
  • 罗定城乡建设规划局网站php图片怎么导入wordpress
  • 广州市建设注册中心网站十堰网站seo方法
  • 没有域名 怎么做网站链接wordpress图片墙插件
  • 合肥建设企业网站wordpress加模板
  • 百度推广 网站要备案吗外贸流程询盘
  • 做毕业网站的流程校园活动策划案的范文
  • 保定网站建设哪家好无人区在线影院免费高清
  • 好的用户体验网站 学校广州市财经商贸职业学校
  • 专门教做甜品的网站js特效网站展示
  • 电子商务成功网站的案例软件定制与开发