Мой класс:
class Complex
{
public:
double Re, Im;
Complex(double re, double im)
{
Re = re;
Im = im;
}
Complex operator +(const Complex& c)const
{
return Complex(Re + c.Re, Im + c.Im);
}
Complex operator -(const Complex& c)const
{
return Complex(Re - c.Re, Im - c.Im);
}
};
inline std::ostream& operator << (std::ostream& o, const Complex& c)
{
return o << '(' << c.Re << ", " << c.Im << ')';
}
inline std::istream& operator >> (std::istream& o, const Complex& c)
{
return o >> c.Re >> c.Im;
}
Моя основная программа:
#include <iostream>
#include <cmath>
#include "Complex.h"
using namespace std;
int main()
{
Complex c(1, 2);
cout << c << endl;
system("pause");
return 0;
}
Журнал Visual Studio:
Я пытался написать это в классе как оператор друга. Но это мой компилятор выдает ту же ошибку, что и в Visual Studio Log.
Как решить эту проблему?