运算符重载!

原创 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++】运算符重载

这是C++的特色,也是C++比较难的一个基本语法,但是,如果你把运算符重载看成一个特殊的类方法,且这个类方法的名称就是运算符,一切就变得简单了。 下面用一个简单的程序说明这个问题: 声明两个3x3二维...

C++运算符重载

  • 2015-09-07 20:40
  • 213KB
  • 下载

C++ 运算符重载

  • 2015-06-19 14:52
  • 1.74MB
  • 下载

运算符重载分析与实例

运算符重载时的几个关键点: 1. 首先,运算符重载不会改变运算符的优先级和结合性。 2. 运算符的重载不能改变运算符的运算对象数。因此,重载函数的形参个数(包括成员函数的隐式指针this)...

运算符重载

  • 2014-03-25 22:01
  • 349KB
  • 下载

C++运算符重载

  • 2013-08-07 21:29
  • 1.47MB
  • 下载

第08周:1.2:类的友元函数+复数类中的运算符重载

/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 作 者:王颖 * 完成日期:2014 年 4 月 14 日 * 版 本 号...

运算符重载详解

  • 2014-06-07 22:08
  • 740KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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