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

江西个人网站备案做论坛涉县网站建设

江西个人网站备案做论坛,涉县网站建设,wordpress 后台500,学生处网站建设工作总结c成员函数返回类对象引用和直接返回类对象的区别 成员函数直接返回类对象&#xff08;返回临时对象&#xff0c;对象拷贝&#xff09; #include <iostream> class MyInt { public:int value;//构造函数explicit MyInt(int v0) : value(v){}//加法操作,返回对象副本&…

c++成员函数返回类对象引用和直接返回类对象的区别

成员函数直接返回类对象(返回临时对象,对象拷贝)

#include <iostream>
class MyInt {
public:int value;//构造函数explicit MyInt(int v=0) : value(v){}//加法操作,返回对象副本(拷贝对象)MyInt add(int x) {value += x;//this 是一个指向当前对象的指针,表示当前对象的存储地址。//*this 是对 this指针的解引用,表示当前对象本身return *this;}
};int main() {MyInt a(5);//构造函数初始化value//add(2)返回新的对象副本(初始值为5)不是原来的a,所以 .add(3)是对临时对象的操作a.add(2).add(3);std::cout << a.value << std::endl;return 0;
}


对象成员变量被初始化为5
a.add(2).add(3) 的执行顺序是关键。以下是详细解释:
a.add(2) 的执行:
a.add(2) 调用 add 方法,将 a.value 的值从 5 增加到 7。
add 方法返回的是当前对象的副本(*this),返回类型 函数名称 MyInt add(),而不是对原对象 a 的引用。
.add(3) 的执行:
.add(3) 是对 a.add(2) 返回的临时对象的操作,而不是对原对象 a 的操作。
临时对象的 value 是 7,它被加上 3,但这个副本不会影响原对象 a。
std::cout << a.value:
输出的是原对象 a 的 value,此时 a.value 仍然是 7,因为 .add(3) 的操作只影响了临时对象

成员函数返回类对象引用(返回对象引用)

#include <iostream>
class MyInt {
public:int value;//构造函数explicit MyInt(int v=0) : value(v){}//加法操作,返回类型别名(引用),对别名的操作就是对对象本身的操作MyInt& add(int x) {value += x;//this 是一个指向当前对象的指针,表示当前对象的存储地址。//*this 是对 this指针的解引用,表示当前对象本身(即引用当前对象)//在 C++ 中,this 是一个指向当前对象的指针,而 *this 表示对该指针的解引用,获取当前对象的引用return *this;//在调用 add 后继续对同一个对象调用其他方法,实现链式调用}
};int main() {MyInt a(5);//构造函数初始化value//add(2)返回a的引用,所以可以继续 .add(3)a.add(2).add(3); //链式调用允许多个操作在一行代码中连续执行,而无需多次引用对象std::cout << a.value << std::endl;return 0;
}


在代码中,a.add(2).add(3); 的执行顺序是关键。
a.add(2):
调用 add 方法,value 的值从 5 增加 2,变为 7。
add 方法返回当前对象的引用(*this),对引用(别名)的操作就是对原对象的操作,因此可以继续调用链式方法。
.add(3):
在 a.add(2) 返回的对象上再次调用 add 方法。
此时,value 的值从 7 增加 3,变为 10。
最终,a.value 的值是 10,因此输出结果为 10。


文章转载自:

http://ohScuUUe.grfhd.cn
http://moFIYvgG.grfhd.cn
http://zkuqO48x.grfhd.cn
http://zRY5eBo2.grfhd.cn
http://mBzJvVrr.grfhd.cn
http://6HVKKytx.grfhd.cn
http://vwObUhyd.grfhd.cn
http://hvLfx2Px.grfhd.cn
http://GZxwbNcY.grfhd.cn
http://hVempp93.grfhd.cn
http://WYGaRh3U.grfhd.cn
http://CXWUKrKb.grfhd.cn
http://DpGLZii9.grfhd.cn
http://MXP5jeuo.grfhd.cn
http://rz2mpCWe.grfhd.cn
http://Sgxq3Jyi.grfhd.cn
http://3KLnK9EK.grfhd.cn
http://pmEvEkPi.grfhd.cn
http://oTGOGWMT.grfhd.cn
http://LBE5G6dT.grfhd.cn
http://zciSoCzT.grfhd.cn
http://WhCDh9hr.grfhd.cn
http://hPSkDpfI.grfhd.cn
http://HNduxC2z.grfhd.cn
http://sr4pz4Vr.grfhd.cn
http://XhVh2Rxe.grfhd.cn
http://Lcn4It7M.grfhd.cn
http://voeLACKa.grfhd.cn
http://eCjBiKpo.grfhd.cn
http://H6ciIOxJ.grfhd.cn
http://www.dtcms.com/wzjs/665139.html

相关文章:

  • 网站备案链接直接查看网站制作合作协议
  • 国外免费网站贸易平台前十名创建一个网页多少钱
  • 网站迭代网站颜色字体颜色
  • 在电脑上建设个人网站广州网站改版
  • 做的网站在百度找不到自助友链平台
  • 口碑好的网站推广软件如何网站做淘客
  • 旅游网站建设资金请示专业的微网站公司
  • 网站开发语言那个好山东手机在线app
  • 无锡营销型网站制作建站素材网
  • 网站怎么推广比较好电子商务以后能干什么
  • 重庆皇华建设集团有限公司网站襄阳网站建设公司
  • 个人网站设计首页wordpress 晒单
  • 新网站如何快速收录整套vi设计都包含哪些
  • 网络 网站建设健康中国app下载
  • 哪里有做网站的单位蚌埠建设学校网站
  • 国外服装图案设计网站国内可以做网页的网站
  • mianf网站徐州智能建站怎么做
  • 微网站哪家好公众号模板编辑器
  • 最全的提交网站入口大全线上营销模式
  • 淮北市住房和城乡建设局网站网站备案是否收费
  • 手机网站和电脑网站的区别个人网站的制作步骤
  • 网站建设要做哪些前期准备工作海南网络广播电视台地震避险常识
  • 免费开网站新浪博客怎么给自己网站做链接吗
  • 高校 网站建设实施方案网站建设方案和报价表
  • 成都网站建设 网络公司网站建设有哪些优质公众号
  • 从零开始做一个网站需要多少钱wordpress如何设置用户登录
  • 开公司做网站石油 技术支持 东莞网站建设
  • 太原住房与城乡建设厅网站厦门建网站费用一览表
  • 珠海网站建设公顺德网站开发招聘
  • 网站后台 网站页面没有显示微网站界面设计