我必须返回两个复数之间的距离,并且我得到的错误是在返回行中显示“复杂*无效转换为双精度”。复杂*无法强制转换为
double Complex::distance(const Complex &a, const Complex &b)
{
Complex *number = new Complex();
number->modificaRe(a.real() - b.real());
number->modificaIm(a.imag() - b.imag());
return (double)number;
}
你能告诉我它是什么,我做错了吗? 更不用说老师给了我们这个函数的定义为“静态双重”,但我得到了另一个错误,所以我只是删除了“静态”。
你知道,C++有在[标准库]复杂类型(http://en.cppreference.com/w/cpp/numeric/complex)? – 2013-02-21 16:43:33
因为如果我不这样做,xCode会说:从'Complex *'转换为非标量类型'Complex'请求。这是我写C++的第一天[忘记提及,不要苛刻我] – Teodora 2013-02-21 16:44:06
我认为你应该采取'数字'的绝对值* AFAIK - 这是如何定义距离。 – amit 2013-02-21 16:44:11