GeirGrusom Skrevet 3. november 2007 Del Skrevet 3. november 2007 Det er fortsatt utrolig stygg programmeringsskikk å override her. Lenke til kommentar
Dead_Rabbit Skrevet 3. november 2007 Del Skrevet 3. november 2007 Jeg synes heller ikke at det er stygt når STL overlaster operator<<. Tvert imot synes jeg dette er en fin løsning da man kan overlaste operator<< i sin egen klasse slik at instanser av denne typen også kan skrives ut med cout. Nifty, synes jeg. Jeg foretrekker dette fremfor å implementere en print-funksjon i hver klasse. Forresten, jeg tror kode eksempelet til GeirGrusom kræsjer da operator<< returnerer et std::ostream objekt, som jeg tror kan by på litt problemer hvis man prøver å bitshifte dette, heh. Lenke til kommentar
Jaffe Skrevet 4. november 2007 Del Skrevet 4. november 2007 Forresten, jeg tror kode eksempelet til GeirGrusom kræsjer da operator<< returnerer et std::ostream objekt, som jeg tror kan by på litt problemer hvis man prøver å bitshifte dette, heh. Det er vel det han prøver å poengtere, at det ikke går slik man hadde tenkt (logisk nok). Men ærlig talt, hvor ofte har man bruk for å bitshifte inni et cout-uttrykk? Jeg ser heller ikke problematikken i at << og >> er overloadet ... Lenke til kommentar
Mr.Garibaldi Skrevet 4. november 2007 Del Skrevet 4. november 2007 Det er vel det han prøver å poengtere, at det ikke går slik man hadde tenkt (logisk nok). Litt på siden av avsporingen, men er det ikke vanlig at når 2 operatører binder likt, så evalueres uttrykket fra venstre? I så fall er det logisk at bit-shiftingen ikke ville fungerer... (Men nå er det visst litt varierende hvilken vei uttrykk evalueres når det kommer til bitshifte, som vi ser her).. Lenke til kommentar
Dead_Rabbit Skrevet 4. november 2007 Del Skrevet 4. november 2007 Jo, i et uttrykk hvor operatorene har lik prioritet, evalueres de fra venstre til høyre. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå