You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Koostuminen

Luokan jäsenmuuttujina voi olla myös muita luokkia. Tätä kutsutaan koostumiseksi.

Esimerkki 1. Koostuminen.

class CProsessori
{
};
class CRAM
{
};
class CTietokone
{
private:
    CProsessori prossu; // Luodaan prossu-olio CProsessori-luokasta
    CRAM ram;           // Luodaan ram-olio CRAM-luokasta
};

Tietokone koostuu prosessorista ja emolevystä (+ muista komponenteista). CTietokone-luokka siis koostuu CProsessori ja CRAM -luokista.

Koostettujen luokkien käyttö

Koostettuja luokkien metodeja kutsutaan kuten muitakin luokkien, eli olioiden kautta. Eli: olion_nimi.metodin_nimi();

Esimerkki 2. Koostettujen olioiden kutsuminen.

// CProsessori-luokka
class CProsessori
{
public:
    int Laske();
};

// CRAM-luokka
class CRAM
{
public:
    void Talleta();
};

class CTietokone
{
private:
    CProsessori prossu;
    CRAM muisti;

public:
    void Suorita()
    {
        prossu.Laske();
        muisti.Talleta();
    }
};
  • No labels
You must log in to comment.