[ n__i__k @ 06.12.2011. 18:38 ] @
Vezbao sam neke zadatke i trazi mi se da uradim overload operatora za ispis podataka. Nije mi jasno sta tu treba da uradim, a ni kako. |
[ n__i__k @ 06.12.2011. 18:38 ] @
[ glorius @ 09.12.2011. 15:29 ] @
http://www.cplusplus.com/refer...stream/ostream/operator%3C%3C/
Sustina je da vec postoje overloadovani operatori za char, int... kao sto mozes videtu u linku. Na primer: ostream& operator<< (ostream& out, char c ); Ovo omogucava da u kodu pises: Code: char c; cout << c; cout je globalni ostream objekat (verujem da si ga vec koristio za ispisivanje na ekranu). Ti bi trebao da napravis funkciju koja lici na gore navedenu u mom primeru: ostream& operator<< (ostream& out, char c ); Funkcija bi trebala da prihvata tvoj podatak. Sad ne znam da li je u zadatku napomenuto da trebas da imas objekat neke klase koji bi trebalo da prosledis funkciji. Ako je tako onda ce kod izgledati ovako: Code: class MojaKlasa { public: int podatak; }; ostream& operator<< (ostream& out, MojaKlasa obj ) { out << obj.podatak; return out; } Ovo je overload operatora za ispis. Na ovaj nacin si omogucio da stampas podatak tvoje klase: Code: void main() { MojaKlasa obj; obj.podatak = 3; cout << obj; } Copyright (C) 2001-2024 by www.elitesecurity.org. All rights reserved.
|