[C++] Przeciążenie operatora >>
Ostatnio zmodyfikowano 2018-05-30 17:56
Jah00 Temat założony przez niniejszego użytkownika |
[C++] Przeciążenie operatora >> » 2018-05-30 17:38:24 Witam, pisząc program zawierający przeciążenie kilku operatorów natrafiłem na problem, funkcja przeciążająca operator >> jest f. zaprzyjaźnioną, jednak mimo to kompilator wskazuje błąd dostępu do składowej A i B pisząc że są prywatne, dodam że problem nie występuje przy operatorze <<. Z góry dziękuję za pomoc. Kod klasy: class Zesp { private: double A; double B; public: Zesp(); Zesp( double a, double b ); Zesp operator +( const Zesp & zs ); Zesp operator -( const Zesp & zs ); Zesp operator *( const Zesp & zs ); Zesp operator *( double n ); friend void operator ~( const Zesp & zs ); friend Zesp operator *( double n, Zesp & zs ); friend std::istream & operator >>( std::istream & is, const Zesp & zs ); friend std::ostream & operator <<( std::ostream & os, const Zesp & zs ); };
Definicja operatora >> : istream & operator >>( istream & is, Zesp & zs ) { cout << "Skladowa rzeczywista: "; is >> zs.A; cout << "\nSkladowa urojona: "; is >> zs.B; cout << endl; return is; }
|
|
Monika90 |
» 2018-05-30 17:56:36 Zaprzyjaźniłeś inną funkcję niż definiujesz. std::istream & operator >>( std::istream & is, const Zesp & zs )
istream & operator >>( istream & is, Zesp & zs )
|
|
« 1 » |