网站大量收购独家精品文档,联系QQ:2885784924

Ch3 运算符重载.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Ch3 运算符重载

代码模拟 对Complex类进行代码模拟,包括: 类的定义 重载operator-进行两个复数间的减法操作 重载operator-进行复数和实数的减法操作 重载operator-进行复数取反操作(单目) 友员函数vs.成员函数 定义盒子类,属性包括长、宽和高; 实例化多个盒子对象, 设置其三边为随机数 实现两个盒子相加 找寻若干个盒子中体积最大的对象 有哪些信誉好的足球投注网站体积在制定范围内的盒子,并统计其个数 对Box类进行课堂练习,包括: 类的定义(见下页) 成员函数重载int operator(Box ) 成员函数重载int operator==(Box ) 友员函数重载float operator+(Box , Box ) 在main()中测试 课后作业 1. 集合类(Set) (1)重载+(并) (2)重载-(差) (3)重载×(交) (4) 重载= (5)重载-= Set S1,S2; S1-=S2;//集合S1中去掉S2中存在的元素) 课后作业 2. 日期类(Date) (1)重载-(日期相差天数) (2)重载+(Date+int) (3)重载+(int+Date) (4) 重载++(Date d; d++;++d; ++++d) 课后作业 3. 定义盒子类,属性包括长、宽和高; 实例化多个盒子对象, 设置其三边为10以内的随机数 实现两个盒子相加(产生新的盒子对象) 找寻若干个盒子中体积最大的对象 有哪些信誉好的足球投注网站体积在制定范围内的盒子(200~500),统计其个数 课后作业-选做题 4. 字符串类(String) 例 3 友元函数重载++ class Counter { public : Counter ( int = 0) void display( ) const ; Counter operator ++ ( Counter ) ; // 前置 Counter operator ++ (Counter, int ) ; // 后置 private: unsigned value ; }; Counter Counter :: operator ++ (Counter c) { ++ c.value ; return c ; } Counter Counter :: operator ++ (Counter c, int ) { Counter temp; temp.value = c.value ++ ; return temp; } class Counter { public : Counter ( int = 0) void display( ) const ; Counter operator ++ () ; // 前置 ++c Counter operator ++ ( int ) ; // 后置 c++ Counter operator ++ ( Counter ) ; // 前置 Counter operator ++ (Counter, int ) ; // 后置 private: unsigned value ; }; 使用友员重载算符的讨论 若一运算符的操作需要修改类对象状态时, 应该用成员函数重载; 需要左值操作数的运算符(如 =,*=,++) 重载为友员函数时要用引用参数 如果运算符的操作数(尤其是第一个操作数) 希望有隐式转换,则 必须用友员函数重载 6.2.2 用友员函数重载算符 2.3 典型运算符重载 关系运算符 赋值运算符 下标运算符 1.关系运算符重载 1.关系运算符重载 1.关系运算符重载 class Box //盒子类 { public: Box(double l=1.0, double w=1.0, double h=1.0); double volume( ) const; 。。。。。。 private: double length; double width; double height; }; 比较体积: box1 box2 box max min box 1.关系运算符重载 bool Box::op

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档