//操作符重栽
//2004.9.4
using System;
class Complex {
double r, v;
public Complex(double r, double v) {
this.r = r;
this.v = v;
}
//重栽加法操作符(二元)
public static Complex operator + (Complex a, Complex b) {
return new Complex(a.r+b.r, a.v+b.v);
}
//重栽负号操作符(一元)
public static Complex operator - (Complex a) {
return new Complex(-a.r,-a.v);
}
//重栽自增操作符(一元)
public static Complex operator ++ (Complex a) {
double r = a.r + 1;
double v = a.v + 1;
return new Complex(r, v);
}
public void Print() {
Console.WriteLine(r + "," + v);
}
}
//执行类
class Test {
public static void Main() {
Complex a = new Complex(3,4);
Complex b = new Complex(5,6);
Complex c = -a;
c.Print();
Complex d = a + b;
d.Print();
a.Print();
Complex e = a++;
a.Print();
e.Print();
Complex f = ++a;
a.Print();
f.Print();
}
}
//2004.9.4
using System;
class Complex {
double r, v;
public Complex(double r, double v) {
this.r = r;
this.v = v;
}
//重栽加法操作符(二元)
public static Complex operator + (Complex a, Complex b) {
return new Complex(a.r+b.r, a.v+b.v);
}
//重栽负号操作符(一元)
public static Complex operator - (Complex a) {
return new Complex(-a.r,-a.v);
}
//重栽自增操作符(一元)
public static Complex operator ++ (Complex a) {
double r = a.r + 1;
double v = a.v + 1;
return new Complex(r, v);
}
public void Print() {
Console.WriteLine(r + "," + v);
}
}
//执行类
class Test {
public static void Main() {
Complex a = new Complex(3,4);
Complex b = new Complex(5,6);
Complex c = -a;
c.Print();
Complex d = a + b;
d.Print();
a.Print();
Complex e = a++;
a.Print();
e.Print();
Complex f = ++a;
a.Print();
f.Print();
}
}
博客展示了C#中复数类的操作符重载代码。定义了Complex类,对加法、负号、自增操作符进行重载,并在Test类的Main方法中创建复数对象进行操作符运算测试,最后输出结果,体现了操作符重载在C#编程中的应用。

被折叠的 条评论
为什么被折叠?



