У меня проблема с перегрузкой оператора. У меня есть класс с именем Point1
, который определяется какнет совпадений для оператора >> с типами операндов ifstream и double
class Point1 {
private:
long double x;
public:
Point1(): x(0) {}
Point1(long double val): x(val) {}
Point1(Point1 & val): x(val.x) {}
//Some functions omitted
friend ofstream& operator<< (ofstream&, const Point1&);
friend ifstream& operator>> (ifstream&, Point1&);
};
Класс работает, кроме мазута для operator>>(ifstream&, Point1&);
, функция которого тело:
double tmp;
in >> tmp; //In this line g++ breaks with an error
pnt.x=tmp;
return in;
Я использую GCC 4.9.3 на Debian тестирование (armv7l). Полный исходный код можно найти здесь: http://hastebin.com/igunaquxiw.cpp
И мы все должны знать, что такое 'in'? – juanchopanza
Ошибок не отправлено, нет [mvce] (http://stackoverflow.com/help/mcve), -1. – user657267
in is ifstream & and pnt - Point1 & – Morten