using System;
public class ComplexNumber
{
public double Real { get; set; }
public double Imaginary { get; set; }
public ComplexNumber(double real, double imaginary)
{
Real = real;
Imaginary = imaginary;
}
// 重载加法运算符
public static ComplexNumber operator +(ComplexNumber a, ComplexNumber b)
{
return new ComplexNumber(a.Real + b.Real, a.Imaginary + b.Imaginary);
}
public override string ToString()
{
return $"{Real} + {Imaginary}i";
}
}
class Program
{
static void Main()
{
// 创建两个复数对象
ComplexNumber complex1 = new ComplexNumber(1, 2);
ComplexNumber complex2 = new ComplexNumber(3, 4);
// 使用重载的加法运算符
ComplexNumber result = complex1 + complex2;
// 打印结果
Console.WriteLine($"Result: {result}");
}
}
在上面的例子中,ComplexNumber 类重载了加法运算符 +。通过这样做,我们可以像操作基本数据类型一样操作复数对象。运算符重载的方法是在类中定义一个带有特殊关键字 operator 的方法,其名称与要重载的运算符相匹配。
运算符重载允许你以更自然的方式使用自定义类型,提高了代码的可读性和灵活性。需要注意的是,运算符重载应该按照预期的数学规则进行定义,以保持代码的可维护性和可理解性。
转载请注明出处:http://www.zyzy.cn/article/detail/6353/C#