Hej, problem jest taki - chcę zdefiniować operator strumieniowy jak w poniższym kodzie:
istream &operator>>(istream &wyjscie, Gazeta &gaz)
{
wyjscie >> gaz.nazwa >> gaz.wlasciciel >> gaz.rok_zalozenia;
return wyjscie;
}
Kompiluje się bez przeszkód. Jednak próbując załadować do obiektu wszystkie trzy zmienne za pomocą:
gazeta >> nazwa >> wlasciciel >> rok_zalozenia;
kompilator bulwersuje się i wypluwa "no match for 'operator>>' (operand types are 'Gazeta' and 'std::string {aka std::basic_string<char>}')". W drugą stronę problemu nie ma, tj. gdy chcę załadować gazetę do pliku, podobnie zdefiniowany operator << działa bez problemu. Gdzie robię błąd?