Przeciązenia mają się znaleźć w nie głównym pliku programu. Dla przyładu mam w “zespolone.cpp”:
//Przeciazenie operatora wejswcia dla liczby zespolonej
istream & operator >> (istream & StrmWej, Zespolona & Z){
char Znak;
StrmWej>>Z.Re;
StrmWej>>Znak;
if(!(Znak=='+'||Znak=='-')){cerr<<"niepoprawny format (1)";exit(1);}
StrmWej>>Z.Im;
if(Znak=='-'){Z.Im=-Z.Im;}
StrmWej>>Znak;
if(Znak!='i'){cerr<<"niepoprawny format (2)";}
return StrmWej;
}
//Przeciazenie operatora wyjscia dla liczby zespolonej
ostream &operator <<(ostream &ostrm, Zespolona Z){
if(Z.Im<0){
return ostrm <
}else{
return ostrm <
}
}
…i w “zespolone.hpp” potrzebna deklaracja tego. Tutaj mam problem. Postępując tak jak w przypadku innych funkcji/przeciążeń rzuca błędami(“expected constructor, destructor, or type conversion before ‘&’ token” - czyli sporo możliwości, probowałem, szukałem, nie wychodzi). Prosze o pomoc(jak sie powinno robić, generalna zasada i moze przykład).