Мне нужно вернуть расстояние между двумя комплексными числами, и ошибка, которую я получаю, находится в обратной линии, в которой говорится: «Недопустимый листинг из Сложного * для двойного».Недопустимый литой состав из комплекса *, чтобы удвоить
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)? –
Потому что, если я этого не делаю, xCode говорит: «Запрошенное преобразование из« Complex * »в нескалярный тип« Complex ». Это первый день, когда я пишу C++ [забыл упомянуть, не будьте суровы на мне] – Teodora
Я думаю, вы должны принять * абсолютное значение * вашего 'number', AFAIK - так определяется расстояние. – amit