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

邢台123式的网站怎么做led网站模板

邢台123式的网站怎么做,led网站模板,wordpress网站维护插件,芜湖网站目录 前言 成员函数返回this指向的对象本身时#xff0c;为什是返回引用类型#xff1f; 成员函数返回this对象本身时#xff0c;内部通常会通过拷贝构造函数来创建一个临时对象#xff1f; 总结 前言 c通过提供特殊的对象指针#xff0c;this指针 指向被调用的成员函… 目录 前言 成员函数返回this指向的对象本身时为什是返回引用类型 成员函数返回this对象本身时内部通常会通过拷贝构造函数来创建一个临时对象 总结 前言 c通过提供特殊的对象指针this指针 指向被调用的成员函数所属的对象 this指针是隐含每一个非静态成员函数内的一种指针this指针不需要定义直接使用即可当形参和成员变量同名时可用this指针来区分在类的非静态成员函数中返回对象本身可使用return *this 成员函数返回this指向的对象本身时为什是返回引用类型 类似于 ba修改b同时就是修改a完全可以把b当做ab就是a本身但是如果返回的不是引用就是 ba那就是创造一个新的变量。不能把b当做a用所以类型去掉引用返回的不是b本身而是b的副本         当你直接返回一个 Person 对象时每次调用 PersonAddPerson 函数都会创建一个新的 Person 对象。这是因为函数返回的是一个临时对象即在函数内部创建的而不是原对象本身。         在 C 中函数的返回值通常会通过拷贝构造函数copy constructor或移动构造函数move constructor生成一个临时对象。这样做是为了保证函数返回的对象是有效的且能够被使用。         因此如果 PersonAddPerson 函数直接返回一个新创建的 Person 对象每次调用函数时都会生成一个临时对象。这样的设计可能会引入额外的资源开销包括内存分配和对象构造等。         如果你希望在原对象上进行修改而不是返回新对象你可以使用引用类型作为函数的返回类型。通过返回引用类型函数可以直接操作并修改原对象。这样可以避免创建新对象和资源开销。 #include iostream using namespace std;class Person { public:Person(int age){// 1、当形参和成员变量同名时可用this指针来区分this-age age; // this-成员类似结构体指针访问成员}Person PersonAddPerson(Person p){this-age p.age;return *this; // 返回对象本身}int age; };void test01() {Person p1(10);cout p1.age p1.age endl; // 10Person p2(10);/* 链式调用第一次得到20返回p2本身再继续调用最终加两次得到40如果返回的是Person类型这里得到的是20*/p2.PersonAddPerson(p1).PersonAddPerson(p1).PersonAddPerson(p1);cout p2.age p2.age endl; // 40 }int main() {test01();return 0; } 成员函数返回this对象本身时内部通常会通过拷贝构造函数来创建一个临时对象 当一个函数返回一个对象时编译器会使用拷贝构造函数来生成该返回对象的副本。拷贝构造函数是一个特殊的类成员函数用于将一个对象的数据成员的值复制到另一个对象中。 假设我们有一个简单的类 Person具有一个 name 字符串成员变量 class Person {public:std::string name;Person(const std::string n) : name(n) {}// 拷贝构造函数Person(const Person other) : name(other.name) {}};// 现在我们有一个函数 getPerson()它返回一个 Person 对象Person getPerson() {Person p(Alice);return p;} 在这个例子中当 getPerson() 函数被调用时它会创建一个 Person 对象 p并将其初始化为 Alice。然后函数将返回 p。 在返回的过程中编译器会使用拷贝构造函数来生成返回对象 p 的副本。这意味着在调用 getPerson() 后将会创建一个新的 Person 对象其中的 name 字符串值被复制为 Alice。这是因为我们不能直接返回函数内部的局部对象 p因为它是在函数结束后将被销毁的。 因此拷贝构造函数在这里的作用是在函数返回对象时根据已有对象的值创建一个新的对象确保返回的对象是有效且具有正确的值。 总结 this指针是一个特殊的指针用于访问当前对象的成员。它提供了一种便捷的方式来引用当前对象的成员变量和成员函数并解决名称冲突的问题。
http://www.zqtcl.cn/news/506333/

相关文章:

  • 电商网站项目建设个人网站空间收费
  • 官方网站制作思路樟木头东莞网站建设
  • 怎么寻找做有益做网站的客户大连网站推广
  • 湖南网站开发企业excel网站建设
  • 安康网站建设技巧腾讯建设网站视频下载
  • 如何能让企业做网站的打算中企动力做网站贵吗
  • wordpress 空间常州seo
  • 网站负责人备案采集照具体要求湛江网吧
  • 长春建站模板制作php网站空间购买
  • 网站域名到期怎么办食品包装设计的介绍
  • 建设网站专栏台州cms模板建站
  • 网站建设套餐方案湛江网站如何制作
  • wordpress网站怎么打开西安企业做网站多少钱
  • 电子商务网站建设的实训报告网页美工设计夏霍
  • 在一呼百应上做网站行吗江西省住房和城乡建设厅的网站
  • 对百度网站进行分析山水人家装饰公司
  • 接网站开发广州仿站定制模板建站
  • 资源网站源码下载制作软件的app有哪些
  • 免备案空间网站电子商务网站经营特色分析的主要内容包括
  • 遨游建站网站设计的基本知识
  • 延津县建设局网站景安网站上传完还要怎么做
  • 模板做网站达州住房和城乡建设部网站
  • 高端网站定做公司企业文化模板
  • iis7.5添加网站销售订单管理系统
  • 网站开发模板代码外贸流程知识
  • 免费网站有哪些邯郸去哪做网站改版
  • 商务网站开发的工作任务湖南专业网站建设
  • 怎样搭建免费网站什么网站做网页好
  • flash工作室网站模板天津seo培训班在哪里
  • 怎么做游戏推广网站扬中商城官网