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

广州番禺区网站建设小程序开发工具编辑器

广州番禺区网站建设,小程序开发工具编辑器,国际军事形势最新消息,张家口认证助手app赋值运算符重载 类的默认函数拷贝构造函数和赋值运算符 重载赋值运算符相关注意事项 类的默认函数 一个类至少有4个默认函数#xff1a; 默认构造函数拷贝构造函数析构函数赋值运算符重载函数 拷贝构造函数和赋值运算符 拷贝构造函数是在创建类的时候调用的#xff0c;之… 赋值运算符重载 类的默认函数拷贝构造函数和赋值运算符 重载赋值运算符相关注意事项 类的默认函数 一个类至少有4个默认函数 默认构造函数拷贝构造函数析构函数赋值运算符重载函数 拷贝构造函数和赋值运算符 拷贝构造函数是在创建类的时候调用的之前类并不存在。赋值运算符是在两个类均存在的情况下把一个类的属性全部赋值给另外一个类。默认的拷贝构造函数和默认的赋值运算符在对象有堆区内存时因为默认的均是浅拷贝所以均会存在内存重复释放的问题。 重载赋值运算符 语法类名 operator(const 类名 ref_h) 相关注意事项 在对象的属性有在堆区开辟内存的情况下不管是拷贝构造函数还是赋值运算符都需要进行自定义。使用new在堆区重新开辟空间避免重复释放。 浅拷贝 深拷贝 code:#include iostreamusing namespace std;class Horse{private:int *m_age;public:Horse(int ref_age){m_age new int(ref_age);}Horse(const Horse ref_h){m_age new int(*ref_h.m_age);//m_age ref_h.m_age; //默认的构造函数是这种实现方式简单的赋值操作在存在指针时只是将指针简单赋值指针指向的堆区空间并不进行拷贝。cout 拷贝, m_age , ref_h.m_age , age: * ref_h.m_age endl;}Horse operator(const Horse ref_h) // 返回自身的引用链式编程实现连等操作{if (this ref_h) // 如果是自身赋值如h1h1直接返回cout 自身赋值 endl;return *this;// 如果对象已经有开辟了空间先进行释放if (m_age ! NULL){delete m_age;m_age NULL;}//m_age ref_h.m_age; //默认的是这种实现方式简单的赋值操作在存在指针时只是将指针简单赋值指针指向的堆区空间并不进行拷贝。m_age new int(*ref_h.m_age); // 深拷贝cout , m_age , ref_h.m_age , age: * ref_h.m_age endl;return *this;}~Horse(){if (m_age ! NULL){cout 析构: m_age endl;delete m_age;m_age NULL;}}void show_info(){cout age: * m_age endl;}};// 对拷贝构造函数的测试void test01(){Horse h1(0);h1.show_info();Horse h2(h1);h2.show_info();}// 对操作符的测试void test02(){Horse h1(88);Horse h2(2);Horse h3(5);h3 h2 h1;h1.show_info();h2.show_info();h3.show_info();}void main(){test01();cout ************************ endl;test02();system(pause);} result:age: 0拷贝, 0000024C16116510, 0000024C16116A50, age: 0age: 0析构:0000024C16116510析构:0000024C16116A50************************,0000024C16116150, 0000024C16116750, age: 88,0000024C161164D0, 0000024C16116150, age: 88age: 88age: 88age: 88析构:0000024C161164D0析构:0000024C16116150析构:0000024C16116750注意在赋值运算符重载函数中先判断是否在堆区有内存有的话先释放再重新开辟。
http://www.pierceye.com/news/215770/

相关文章:

  • html5 网站开发定制做公司网站好处
  • 建站网站教程网站建设工程师职责说明书
  • 新云网站模版宠物网站开发
  • 网站建设面授班网站备案回访电话号码
  • 阿里有做网站网站建设费是宣传费用吗
  • 点广告挣钱网站有哪些网站的建设与预算
  • 佛山新网站建设详细内容手机软件公司
  • 网站建设美词原创怎样建设一个能上传数据的网站
  • 网站建设网站营销做APP必须要有网站么
  • 易企建站咖啡公司网站建设策划书
  • wordpress 不能查看站点网站建设公司软件开
  • 网站文章seoftp搭建wordpress
  • 济宁企业做网站受欢迎的常州做网站
  • 我有域名有服务器怎么建设网站凡科官网app下载
  • 深圳保障性住房可以买卖吗襄樊seo排名
  • 餐饮官网建站模板网站开发实验报告可行性分析
  • 美食网站建设规划书外链工具软件
  • 网站设计模板代码七牛wordpress后台慢
  • 佛山网站建设怎么办huang色网站
  • 涞水县建设局网站wordpress wp_enqueue_script
  • 网站怎么添加音乐wordpress livechat
  • 网站开发的业务需求分析学校网站建设运行简介
  • 网站建设找博网iis7.0网站错误代码解决
  • 嘉鱼网站建设公司php网站开发技术期末题库
  • 企业网站搭建方案wordpress代码编辑器件
  • 网站的大小黄埔移动网站建设
  • 建设网站的语言中囯军事网
  • 网站开发职业访谈上海 建设工程质量监督站网站
  • 网站开发程序用什么好用新浪微博做网站
  • 什么免费推广网站好旅游订房网站开发需求文档