Ag B111.1 klo 8-10 ja 10-12 (Ohjaaja: Mikko Luukkonen)
Selaa ensin luentomonisteen luvut 15.2 ja 15.6.
Avaa komentokehoiteikkuna (Command Prompt). Siirry omaan hakemistoosi (avaa käyttäjätunnuksesi). Kirjoita sitten
C:\mytemp\ohj\käyttäjätunnuksesi> wget http://www.it.jyu.fi/users/antkaij/jasen.cpp
Muokkaa tiedostoa jasen.cpp ja siirrä aluksi metodien määrittelyt luokan ulkopuolelle (eli tee niistä tavallisia metodeita inline-metodien sijaan).
Luo uusi tiedosto, jasen.h, ja laita sen alkuun kommentti. Sitten kommentin jälkeen kirjoita
#ifndef JASEN_H_
#define JASEN_H_
#endif // JASEN_H_
Siirrä jasen.cpp:stä luokan cJasen
määrittely, eli siis class cJasen { ... };,
tiedostoon jasen.h juuri kirjoittamasi
#define-rivin perään, ennen
#endif-riviä.
Kirjoita jasen.cpp-tiedoston alkuun siitä puuttuva kommentti. Sitten kirjoita heti kommentin perään, omalle rivilleen
#include "jasen.h"
Luo tiedosto jasentes.cpp, jonka alkuun laita
kommentti ja rivi #include "jasen.h". Siirrä
tiedostosta jasen.cpp tiedostoon
jasentes.cpp main-funktio.
Käynnistä nyt C++Builder (jollei se ole jo käynnissä). Luo uusi projekti käyttäen jasentes.cpp-tiedostoa pohjana seuraavasti. Valitse File->New ja esiin aukeavasta ikkunassa kaksoisnapauta Console Wizard -ikonia. Nyt aukeaa uusii ikkuna. Pidä huoli, että valintaruuduista Use VCL ja Multithreaded puuttuu ruksi, ja että Specify project source -valintaruudussa on ruksi. Paina näppäintä, jossa on kolme pistettä. Valitse nyt aukeavassa tiedostonvalintaikkunassa tekemäsi tiedosto jasentes.cpp, paina Open ja valitse lopulta OK.
Lisää nyt projektiin tiedosto jasen.cpp: Valitse Project->Add to project. Valitse esiin tulevassa tiedostonvalintaikkunassa tiedosto jasen.cpp ja paina Open.
Nyt voit kääntää ja ajaa ohjelman F9:llä.
Hae nyt tiedosto jasenet.cpp:
C:\mytemp\ohj\käyttäjätunnuksesi> wget http://www.it.jyu.fi/users/antkaij/jasenet.cpp
Poista jasenet.cpp-tiedostosta
cJasen-luokan ja sen metodien määrittely.
Kirjoita sitten tiedoston jasenet.cpp alkuun siitä puuttuva kommentti, ja heti kommentin jälkeen lisää omalle rivilleen
#include "jasen.h"
Luo nyt uusi tiedosto jasenet.h ja kirjoita sen alkuun kommentti. Sitten kommentin jälkeen kirjoita (vertaa edelläolevaan):
#ifndef JASENET_H_
#define JASENET_H_
#endif // JASENET_H_
Siirrä jasenet.cpp-tiedostosta jasenet.h-tiedostoon luokan cJasenet määrittely (mutta ei metodien määrittelyitä).
Kirjoita tiedostoon jasenet.cpp edellä kirjoitetun
#include-rivin perään omaksi rivikseen
#include "jasenet.h"
Luo tiedosto jasenettes.cpp, jonka alkuun laita
kommentti ja rivit #include "jasenet.h" ja
#include "jasen.h". Siirrä tiedostosta
jasenet.cpp tiedostoon jasenettes.cpp
main-funktio.
Käynnistä nyt C++Builder (jollei se ole jo käynnissä). Luo uusi projekti käyttäen jasenettes.cpp-tiedostoa pohjana seuraavasti. Valitse File->New ja esiin aukeavasta ikkunassa kaksoisnapauta Console Wizard -ikonia. Nyt aukeaa uusii ikkuna. Pidä huoli, että valintaruuduista Use VCL ja Multithreaded puuttuu ruksi, ja että Specify project source -valintaruudussa on ruksi. Paina näppäintä, jossa on kolme pistettä. Valitse nyt aukeavassa tiedostonvalintaikkunassa muokkaamasi tiedosto jasenettes.cpp, paina Open ja valitse lopulta OK.
Lisää nyt projektiin tiedosto jasenet.cpp: Valitse Project->Add to project. Valitse esiin tulevassa tiedostonvalintaikkunassa tiedosto jasenet.cpp ja paina Open.
Lisää samalla tavalla projektiin myös tiedosto jasen.cpp.
Nyt voit kääntää ja ajaa ohjelman F9:llä.
Kertausta: luokkien määrittelyt kirjoitetaan luokan mukaan nimettyyn .h-tiedostoon. Tämä tiedosto alkaa seuraavankaltaisilla riveillä:
#ifndef LUOKANNIMI_H_ #define LUOKANNIMI_H_
ja päättyy riviin
#endif // LUOKANNIMI_H_
Ko. tiedosto sisällytetään #include-käskyllä kaikkiin
niihin tiedostoihin, joissa kyseistä luokkaa käytetään.
Luokan metodit määritellään luokan nimen mukaan nimetyssä
.cpp-tiedostossa, johon sisällytetään tiedoston alussa
olevalla #include-käskyllä luokan
.h-tiedosto.
Luokan testipääohjelma laitetaan omaan
.cpp-tiedostoonsa, jossa on tarvittavat
#include-käskyt.
Projektiin laitetaan mukaan kaikki tarvittavat .cpp-tiedostot mutta ei .h-tiedostoja. Projektissa pitää olla mukana täsmälleen yksi main-funktio.
Lopun aikaa voit tehdä demoja ja harjoitustyötäsi. Kokeile esimerkiksi harjoitustyösi jakamista tiedostoihin edellisen ohjeen mukaisesti, jos 5. vaiheesi on jo riittävän pitkällä.
Viimeksi muutettu: ke 4 heinäkuu 2001 15:10:03
Antti-Juhani Kaijanaho <gaia@iki.fi>
Perustuu osittain Vesa Lappalaisen ja Kari Kärkkäisen tekemiin
kurssisivustoihin ja teksteihin.