Top.Mail.Ru
Ответы
Аватар пользователя
8 лет назад
от
Изменено

Ошибка Reference is ambiguous в коде C++

В общем вот мой код. Выдает ошибку как в заголовке вопроса... Уже все перепроверил, не могу понять что за ошибка. Помогите исправить.
Код:
#include
#include
#include

using namespace std;

struct complex1
{
float Re;
float Im;
};

complex1 vvod1()
{
complex1 temp;
cout<<"Введите действительную часть числа"<>temp.Re;
cout<<"Введите мнимую часть числа"<>temp.Im;
return temp;
}

void vivod (complex1 chislo)
{
cout<=0)
cout<<" + "<<chislo.Im<<"i"<<endl;
else
cout<<" "<<chislo.Im<<"i"<<endl;
}

complex1 plus (complex1 chislo1, complex1 chislo2, bool pr=true)
{
complex1 temp;
temp.Re=chislo1.Re+chislo2.Re;
temp.Im=chislo1.Im+chislo2.Im;
if (pr) vivod(temp);
return temp;
}

int main()
{
complex1 x, y, chislo3;
x=vvod1();
y=vvod1();
vivod (x);
vivod (y);
chislo3=plus(x, y, true);

return 0;
}

Дополнен

Да блин, опять этот майл ру все вводит через очко. Библиотеки подключены.: #include
#include
#include

Дополнен

iostream
math.h
stdio.h

Дополнен

Вот сркин на котором нормальный код:

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Знаток

Попробуйте без использования "using namespace std".
перевод "reference to 'somename' is ambiguous" - "ссылка на 'somename' неоднозначна", что означает, вероятно, конфликт имён.
В моём случае проблема решилась именно так.

Аватар пользователя
8лет

Попробуй функцию plus переименовать.

Аватар пользователя
Просветленный
8лет

Вместо функции плюс можно перегрузить оператор + в классе, и третий параметр в нем смысла нет
А ошибку ищи в функции вывода

Аватар пользователя
Мастер
8лет

Я конечно могу ошибаться, но библиотеки в начале (#include библиотека) нужны.