运算符重载!

原创 2007年09月24日 10:30:00
所谓运算符重载就是通过我们设计的类,使用标准的运算符,例如+ -等等.看了一些概念性的定义,很晕,不懂,下面就一个简单的例子可以清楚的告诉我们什么是运算符重!
namespace ConsoleTest
...{
    
class Program
    
...{
        
public int val;       
        
static void Main(string[] args)
        
...{
            Program p1 
= new Program();
            Program p2 
= new Program();
            p1.val 
= 1;
            p2.val 
= 2;
            
           Program p3 
= p1 + p2;//+ 运算符不能应用于 Program 类型操作数

        }


    }

}

我们要实现上面的操作就要重载+运算符.

 

namespace ConsoleTest
...{
    
class Program
    
...{
        
public int val;

        
public static Program operator +(Program p1, Program p2)
        
...{
            Program p3 
= new Program();
            p3.val 
= p1.val + p2.val;
            
return p3;
        }

        
static void Main(string[] args)
        
...{
            Program p1 
= new Program();
            Program p2 
= new Program();
            p1.val 
= 1;
            p2.val 
= 2;
            
//Program p3 = new Program();
           Program p3 = p1 + p2;
        }


    }

}

这样+运算符就被重载了,类似的我们可以重载其它的一元,二元运算符,很容易理解吧!

ps:运算符重载必须是static.

C++复数定义和重载运算符

  • 2016年04月12日 20:02
  • 4KB
  • 下载

c++——运算符重载(四) 源码

  • 2015年09月09日 17:12
  • 1.85MB
  • 下载

作业11: 类_运算符重载

作业11:  类_运算符重载1.设向量X = ( x1 ,x2 ,x3) 和 Y = ( y1 , y2 ,y3 ),则它们之间的加、减和积分别定义为:X + Y = ( x1 + y1 , x2 +...
  • neicole
  • neicole
  • 2011年07月13日 11:37
  • 2741

C++运算符重载

  • 2015年09月07日 20:40
  • 213KB
  • 下载

C++ 运算符重载

  • 2015年06月19日 14:52
  • 1.74MB
  • 下载

QDataStream 运算符重载发送自定义数据结构

Qt4 Gossip: QDataStream 對於純綷的二進位資料,可以使用QDataStream來協助處理,可以直接處理C++基本資料型態、還有許多Qt資料型態,像是QByteArr...

运算符重载

  • 2014年03月25日 22:01
  • 349KB
  • 下载

运算符重载详解

  • 2014年06月07日 22:08
  • 741KB
  • 下载

面向对象实验二(运算符重载)

一、实验目的 1、掌握成员函数重载运算符。 2、掌握友元函数重载运算符。 3、理解并掌握引用在运算符重载中的作用。 二、实验内容 1、定义空间中的点类(有x,y,z坐标),并重载其++和—运算符。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:运算符重载!
举报原因:
原因补充:

(最多只允许输入30个字)