/* kerhomain.cpp */ /* ** Kerho-ohjelman p„„ohjelma ** ** Tekij„t: Vesa Lappalainen ** Ohjelmointikurssit 1991-1996 ** Tehty: 20.12.1991 ** Muutettu 19.12.1993/vl ** 06.12.1995/vl - C++ versio ** Mit„ muutettu: avustus ** Muutettu 06.12.1995/vl ** Mit„ muutettu: tehty C++ versio ** Muutettu 07.12.1995/vl ** Mit„ muutettu: tehty document/view C++ versio ** Muutettu 09.12.1995/vl ** Mit„ muutettu: jaettu osiin ** ** ** Projektiin mukaan: ** ** kerhomain.cpp - t„m„ tiedosto ** jasen.cpp - yksitt„isen j„senen k„sittely ** kerho.cpp - j„senist”n k„sittely ** naytto.cpp - n„ytt””n liittyv„ kerhon k„sittely ** muunnos.c - jasenen vaatimat muunnokset merkkijonoksi ja takaisin ** C\ALI\ioali.c - yleisk„ytt”iset k„ytt”j„rjestelm„-riippuvat io-rut. ** C\ALI\mjonot.c - yleik„ytt”isi„ aliohjelmia merkkijonojen ** k„sittelyyn ** C\ALI\string.cpp - c++ -merkkijonoluokka (korvike std-versiolle) ** (jollei ole jo mukana systeemiss„) ** C\ALI\mjonotpp.cpp - mjonot++ string-luokan k„sittelyyn ** ** Lis„ksi tarvitaan tietysti otsikkotiedostot: ** ** jasen.h ** kerho.h ** naytto.h ** muunnos.h ** C\ALI\ioali.h ** C\ALI\mjonot.h ** C\ALI\string - jollei ole virallista string-luokkaa ** C\ALI\mjonotpp.h ** ** Luokkahierarkia: ** ** string - yleinen merkkijonoluokka ** cJasen - j„senen ominaisuudet (ks. jasen.cpp ja jasen.h) ** cKerho - j„senet kokoava tietorakenne (ks. kerho.cpp ja kerho.h) ** cNaytto - k„ytt”liittym„„ yll„pit„v„ luokka (sis„lt„„ osoittimen ** kerhoon, ks. naytto.cpp ja naytto.h) ** ** Jos t„m„ ohjelma halutaan kirjoittaa muulle kuin standardip„„tteelle, ** esim. johonkin graafiseen k„ytt”j„rjestelm„„n, pit„„ kirjoittaa uusiksi ** ** naytto-luokka - joutuu t„ydelliseen remonttiin, voi jopa ** tulla lis„„ toimintoja, kuten "Avaa uusi n„kym„" ** kerhomai.c - t„m„ p„„ohjelma ** ioali.? - korvautuu todenn„k”isesti k„ytt”liittym„n vast. ** rutiineilla */ #include "naytto.h" int main(void) { cKerho kerho; cNaytto naytto(&kerho); naytto.ohjeet(); if ( naytto.lue_tiedosto() != 0 ) return 1; naytto.paavalinta(); if ( naytto.talleta() != 0 ) return 2; naytto.kiitokset(); return 0; }