CD5250 - Kodexempel vecka 3

Senast uppdaterat 2000-11-16


Pryl-klassen med tillhörande testprogram och en funktion.
Observera hur Pryl-objekt kopieras och tas bort vid funktionsanrop och retur från funktion.

Nytt 16 nov: Pryl-klassen utökad med lite operatorer, inklusive friend-funktioner och en user-defined conversion.
Jag har också korrigerat en bugg, det fattades borttag av gammal sträng i tilldelningsoperatorn.
Medföljer ett utökat testprogram.

En listklass - headerfil och implementation - samt ett testprogram.
Studera konstruktor - default- och kopierings-, destruktor, tilldelningsoperator.

Ett program som läser in ett antal ord och lägger dem i en lista
samt sen sorterar listan genom att bygga ett ordnat binärt träd.
listklassens headerfil och cpp-fil
trädklassens headerfil och cpp-fil
huvudprogrammet
en funktion "createsortedtree".
Detta exempel är kanske snarast avskräckande, funktionen createsortedtree jobbar med
kopiering av inparametern samt kopiering vid retur...vilket även leder till att destruktor för
lista och träd körs i onödan. Pekare resp. referens hade varit bättre!

Motsvarande program i C består av dessa filer (obs att modulariseringen är annorlunda):
 treesort.c dvs main (som inte har nån motsvarande header-fil),
tree.h som definierar trädet,
tree.c som implementerar trädet,
createsortedtree.c som läser listan och bygger trädet, och
wordlist.h som definierar hur en listnod ser ut.
Jag var för lat för att bryta ut listhanteringen till en separat c-fil, egentligen borde jag förstås ha gjort det.