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

...

Vakiot

...

jäsenmuuttujina

...

Luokkien

...

jäsenmuuttujat,

...

jotka

...

ovat

...

const-tyyppisiä,

...

tulee

...

aina

...

alustaa

...

initialisointilistassa.

...

Jäsenmuuttujia,

...

jotka

...

on

...

määritelty

...

vakioiksi,

...

ei

...

voi

...

muuttaa

...

ajon

...

aikana.

...

Esimerkki

...

1.

...

Vakio

...

jäsenmuuttujan

...

alustaminen.

Code Block

class CYmpyra
{
{
  public:
    CYmpyra();

private:
       const float m_Pii;          // Vakio, koska piin arvo ei muutu.  public:    
  CYmpyra();
}
;
\\
Code Block

// Muodostimen toteutus:
CYmpyra::CYmpyra() :
       
    m_Pii(3.145)                               // Kaikki const-tyyppiset muuttujat alustetaan  initialisointilistassa.
{
}

Tässä

...

esimerkissä

...

esitellään

...

luokka,

...

jolla

...

on

...

yksi

...

jäsenmuuttuja,

...

joka

...

on

...

vakio.

...

Se

...

täytyy

...

alustaa

...

muodostimen

...

initialisointilistassa.

...

Esimerkki

...

2.

...

Olio

...

vakiona

...

jäsenmuuttujana.

Code Block

class CKannet

{  
public:    
   CKannet(const char Nimi\[\])
      \{
     \} }
};
Code Block
class CKirja
{
public:
    CKirja();

private:       
    const CKannet m_Kannet;     // Vakio  public:     CKirja(); }
;
\\

};
Code Block


// Muodostimen toteutus:
CKirja() :
       m_Kannet("Moby Dick")        // Tämä kutsuu CKannet-luokan muodostinta.
{
}

Tässä

...

esimerkissä

...

käytetään

...

koostumista.

...

HUOM

...

!

...

Initialisointilistassa

...

kutsutaan

...

nyt

...

CKannet-luokan

...

muodostinta.

...

Staattiset vakiot jäsenmuuttujina

Luokkien jäsenmuuttujat, jotka ovat const static-tyyppisiä,

...

pitää

...

alustaa

...

suoraan

...

esittelyssä,

...

sillä

...

ne

...

ovat

...

luokkakohtaisia

...

(static)

...

ja

...

vakioita

...

(const).

...

Esimerkki

...

3.

...

Staattisen

...

vakio-jäsenmuuttujan

...

alustaminen.

Code Block


class CLuokka
{
public:
   const int PalautaVakio()
   {
       return VAKIO;
   }

private:
        const static int VAKIO = \-6;   // Yksi yleinen tapa on kirjoittaa vakiot ISOILLA KIRJAIMILLA. ei  pakollista.

};
Code Block
public:
    const int HaeVakio()
   
{         return VAKIO;     }
};
int main()
{
      CLuokka lluokka;
      printf("VAKIO = %d", lluokka.HaeVakioPalautaVakio());

      return 0; 
}

----
h4.