构造函数必须定义以下对象并打印它们:
CComplex c1;
CComplex c2(1,3);
CComplex c3(4);
CComplex c4(c3);
为 +、-、* 和 / 操作实现重载运算符,支持 2 个复数之间的运算以及浮点数和复数之间的运算。
但是,如果仅使用一个参数声明对象,则会出错。查看社区上的 FOO.h 示例并尝试实施但没有成功。
构造函数必须定义以下对象并打印它们:
CComplex c1;
CComplex c2(1,3);
CComplex c3(4);
CComplex c4(c3);
为 +、-、* 和 / 操作实现重载运算符,支持 2 个复数之间的运算以及浮点数和复数之间的运算。
但是,如果仅使用一个参数声明对象,则会出错。查看社区上的 FOO.h 示例并尝试实施但没有成功。
如果目标真的是拥有一个复数计算器,而不是完成学校作业或其他具有一些任意限制的练习,那么您应该使用std::complex
而不是重新发明轮子。
对于它的价值,构造函数std::complex
接受两个参数,都具有默认值。不提模板,std::complex< double >
有效地明确定义了一个构造函数:
complex( double real = 0, double imaginary = 0 );
实现这一点应该获得问题中提到的功能。