c#中重载单目运算符-
Here, we will design overloaded methods for binary operators: minus, multiply and divide. In the below program, we will create a Calculator class with data member val.
在这里,我们将为二进制运算符设计重载方法:减,乘和除。 在下面的程序中,我们将创建一个带有数据成员val的Calculator类。
using System;
namespace ConsoleApplication1
{
class Calculator
{
//declare integer data member
private int val;
//initialize data members
public Calculator(int val)
{
this.val = val;
}
//Overload binary minus operator
public static Calculator operator-(Calculator S1, Calculator S2)
{
Calculator temp = new Calculator(0);
temp.val = S1.val - S2.val;
return temp;
}
//Overload binary multiply operator
public static Calculator operator *(Calculator S1, Calculator S2)
{
Calculator temp = new Calculator(0);
temp.val = S1.val * S2.val;
return temp;
}
//Overload binary minus operator
public static Calculator operator /(Calculator S1, Calculator S2)
{
Calculator temp = new Calculator(0);
temp.val = S1.val / S2.val;
return temp;
}
public void PrintValues()
{
Console.WriteLine("Values of val: " + val);
Console.WriteLine();
}
}
class Program
{
static void Main(string[] args)
{
Calculator S1 = new Calculator(20);
Calculator S2 = new Calculator(10);
Calculator S3 = new Calculator(0);
S3 = S1 - S2;
S3.PrintValues();
S3 = S1 * S2;
S3.PrintValues();
S3 = S1 / S2;
S3.PrintValues();
}
}
}
Output
输出量
Values of val: 10
Values of val: 200
Values of val: 2
翻译自: https://www.includehelp.com/dot-net/program-to-overload-binary-operators-in-csharp.aspx
c#中重载单目运算符-