Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

Luokka

...

(class)

...

Luokat

...

ovat

...

abstraktioita,

...

jotka

...

mallintavat

...

reaalimaailman

...

asioita.

...

Luokat

...

tarjoavat

...

palveluita

...

(metodit)

...

ja

...

voivat

...

tallentaa

...

tilansa

...

jäsenmuuttujiin.

...

Luokkien

...

mallintaminen

...

on

...

oma

...

taiteenlajinsa,

...

eikä

...

ole

...

välttämättä

...

oikeata

...

tapaa

...

mallintaa

...

asioita,

...

on

...

vain

...

parempia

...

ja

...

huonompia

...

tapoja.

...

  Seuraavassa

...

kuvassa

...

on

...

esitetty

...

erään

...

mittausohjelman

...

luokkamalli,

...

jonka

...

nimesin

...

luokkasotkuksi,

...

jokainen

...

voi

...

päätellä

...

miksi?

...

Image Added

Ohjelmassa käytettävät luokat esitellään yleensä omissa .h -tiedostoissaan ja luokan metodit toteutetaan omissa .cpp -tiedostoissaan. Toisaalta C++-kääntäjän

...

kannalta

...

ei

...

ole

...

väliä,

...

onko

...

luokat

...

omissa

...

tiedostoissaan

...

vai

...

kaikki

...

samassa.

...

Kun

...

luokkien

...

lukumäärä

...

kasvaa,

...

on

...

erittäin

...

tärkeätä,

...

että

...

ne

...

löytyvät

...

helposti.

...

Jos

...

kaikki

...

luokat

...

ovat

...

samassa

...

tiedostossaan,

...

tämä

...

vaikeuttaa

...

löytämistä

...

huomattavasti.

...

Luokka

...

UML-mallina:

Image Added

Luokka esitellään seuraavasti:

Code Block


 !EkaLuokka.png|border=1!

Luokka esitellään seuraavasti:

{code}
class OmaLuokka
{
    // Tänne luokan esittely, eli jäsenmuuttujat
    QString Nimi;

    //ja metodit eli funktiot
    AsetaNimi(QString nimi);
 };  // <- Muistakaa puolipiste loppuun!
{code}

Metodeihin

...

etuliitteitä

...

ei

...

yleensä

...

laiteta.

...

Luokan

...

palveluita

...

käytetään

...

olioiden

...

avulla.

...

On

...

muistettava,

...

että

...

muuttujia

...

ei

...

voi

...

normaalisti

...

alustaa

...

luokan

...

esittelyn

...

yhteydessä,

...

vaan

...

ne

...

täytyy

...

alustaa

...

muodostimessa,

...

jossa

...

oliot

...

luodaan.