新疆软件开发

本站首页 软件开发 成功案例 公司新闻 公司简介 客服中心 软件技术 网站建设
  您现在的位置: 新疆二域软件开发公司 >> 开发语言 >> 文章正文

基础学习:算术运算符重载

           如同上面重载加法运算符一样,非常简单
        只要在定义和实现,把+改成相应的其它算术运算符号就行啦
在函数实现部分只要把两个对象的各个成员分别进行相应的算术运算就行啦,
然后返回计算结果的临时对象就OK啦
实例代码
class OpOver
{
public:
 OpOver(int i=0;int j=0){a=i;b=j;};
 OpOver& operator+(const OpOver&)const;
 OpOver& operator-(const OpOver&)const;
 OpOver& operator*(const OpOver&)const;
 OpOver& operator/(const OpOver&)const;
 OpOver& operator%(const OpOver&)const;
private:
 int a;
 int b;
};
//用类成员函数重载运算符+
OpOver& OpOver::operator+(OpOver&& left,const OpOver& right)
{
 OpOver& tempclass(left); 
 tempclass.a+=right.a;
 tempclass.b+=right.b;
 return tempclass;
}
//用类成员函数重载运算符-
OpOver& OpOver::operator-(OpOver&& left,const OpOver& right)
{
 OpOver& tempclass(left); 
 tempclass.a-=right.a;
 tempclass.b-=right.b;
 return tempclass;
}
//用类成员函数重载运算符*
OpOver& OpOver::operator*(OpOver&& left,const OpOver& right)
{
 OpOver& tempclass(left); 
 tempclass.a*=right.a;
 tempclass.b*=right.b;
 return tempclass;
}
//用类成员函数重载运算符/
OpOver& operator/(OpOver&& left,const OpOver& right)
{
 //要检查right的各个成员不能为0
 if (right.a!=0 && right.b!=0 )
 {
 OpOver& tempclass(left); 
 tempclass.a/=right.a;
 tempclass.b/=right.b;
 return tempclass;
 }
}
//用类成员函数重载运算符%
OpOver& OpOver::operator%(OpOver&& left,const OpOver& right)
{
 //要检查right的各个成员不能为0
 if (right.a!=0 && right.b!=0 )
 {
 OpOver& tempclass(left); 
 tempclass.a%=right.a;
 tempclass.b%=right.b;
 return tempclass;
 }
}

 

作者:未知 | 文章来源:未知 | 更新时间:2008-1-15 16:43:21

  • 上一篇文章:

  • 下一篇文章:

  • 相关文章:
    限定及重载语法-编程开发语言
    基础学习:C++重载输入输出符
    重载算法运算符
    基础学习:C++重载下标结算符
    JS支 是否支持“函数重载”
    软件技术
    · 开发语言
    · Java技术
    · .Net技术
    · 数据库开发
    最新文章  
    ·搜集整理的asp.net的验证方
    ·各种FOR循环结构的整理
    ·软件项目开发中应该考虑那
    ·搜集整理的javascript sel
    ·软件开发中项目经理有那些
    ·学习如何在Lambda表达式进
    ·C++基础知识:结构体数据的
    ·C#实现短信发送程序的例子
    ·sun最近修补了一部分java的
    ·rss定制的另外一种实现方式
    ·delphi实现利用arp欺骗来实
    ·基础学习:基于WF的流程框
    ·网络编程中怎样得知一次数
    ·如何逆序输出单链表?
    ·软件开发过程中的性能设计
    关于我们 | 软件开发 | 下载试用 | 客服中心 | 联系我们 | 友情链接 | 网站地图 | 新疆电子地图 | RSS订阅
    版权所有 © 2016 新疆二域软件开发网 www.k8w.net All Rights Reserved 新ICP备14003571号
    新疆软件开发总机:0991-4842803、4811639.
    客服QQ:596589785 ;地址:新疆乌鲁木齐北京中路华联大厦A-5C 邮编:830000