[英]Create class Complex number in C#
我尝试用两个不同的构造函数在C#中创建类复数,第一个构造函数采用实部和虚部,第二个构造函数采用模块和参数。
public class Complex
{
public Complex() { }
private Complex(double _re, double _im)
{
re = _re;
im = _im;
}
public static double Complex_FromCartesian(double _re, double _im)
{
return new Complex(_re, _im);
}
public static double Complex_FromPolar(double _mod, double _arg)
{
var _re = _mod * Math.Cos(_arg);
var _im = _mod * Math.Sin(_arg);
return new Complex(_re, _im);
}
public static Complex operator +(Complex num1, Complex num2)
{
return new Complex(num1.re + num2.re, num2.im + num2.im);
}
public static Complex operator -(Complex num1, Complex num2)
{
return new Complex(num1.re - num2.re, num2.im - num2.im);
}
public double Re { get; set; }
public double Im { get; set; }
private double re, im;
}
}
但是我在两个构造函数中都遇到了同样的错误
如何解决?
您的方法返回一个double
但您尝试返回Complex
类型
更改:
public static double Complex_FromCartesian(double _re, double _im)
{
return new Complex(_re, _im);
}
至:
public static Complex Complex_FromCartesian(double _re, double _im)
{
return new Complex(_re, _im);
}
将该方法的返回类型更改为Complex
。
当双重预期时,你不能返回Complex
。
public static Complex Complex_FromCartesian(double _re, double _im)
{
return new Complex(_re, _im);
}
你的构造函数很好。 问题是你已经指定了double的返回类型,并且你正在返回一个类型为“Complex”的类。
数据类型不匹配时会发生此错误。 它期待“复杂”数据类型,你告诉它是双重的。 将双重变为复杂
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.