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

...

Staattiset

...

jäsenmuuttujat

...

Joissain

...

tapauksissa

...

luokan

...

olioilla

...

on

...

ominaisuuksia,

...

jotka

...

ovat

...

yhteisiä

...

kaikille

...

olioille,

...

esim

...

tieto

...

siitä

...

kuinka

...

monta

...

olioita

...

luokasta

...

on

...

luoto.

...

Tällaiset

...

muuttujat

...

voidaan

...

luoda

...

staattisina

...

,

...

jolloin

...

jokaisella

...

luokasta

...

tehdyllä

...

oliolla

...

näkyy

...

sama

...

arvo

...

.

...

Anchor
esim1
esim1

Esimerkki 1. Staattisen jäsenmuuttujan käsittely.

Tyontekija.h:

* {
Code Block
}
#include <iostream>

using namespace std;

class CTyontekija
{
private:
    static int s_Laskuri;         // laskuri laskee työntekijöiden määrää

public:
    CTyontekija();                // kts. Muodostimet ja  hajoittimet
    ~CTyontekija();
};
{code}
*

Tyontekija.cpp:

* {
Code Block
}
int CTyontekija::s_Laskuri = 0;   // Alustetaan staattinen muuttuja

CTyontekija::CTyontekija()
{
    s_Laskuri++;
    cout << "CTyontekija() - s_Laskuri = " << s_Laskuri << endl;
}

CTyontekija::~CTyontekija()
{
    s_Laskuri--;
}
{code}
*

main.cpp:

* {
Code Block
}
int main()
{
    CTyontekija Tyontekijat[4];
    for (int i=0; i<4; i++)
    {
         cout << "Tyontekijat[" << i <<"].s_Laskuri = "  << Tyontekijat[i].s_Laskuri << endl;    
    }
}
{code}