static variable

Üdvözlöm, Ön a static variable szó jelentését keresi. A DICTIOUS-ban nem csak a static variable szó összes szótári jelentését megtalálod, hanem megismerheted az etimológiáját, a jellemzőit és azt is, hogyan kell a static variable szót egyes és többes számban mondani. Minden, amit a static variable szóról tudni kell, itt található. A static variable szó meghatározása segít abban, hogy pontosabban és helyesebben fogalmazz, amikor beszélsz vagy írsz. Astatic variable és más szavak definíciójának ismerete gazdagítja a szókincsedet, és több és jobb nyelvi forráshoz juttat.

Főnév

static variable (tsz. static variables)

  1. (informatika) statikus változó

A statikus változó C++-ban egy olyan változó, amelynek élettartama a teljes programfutás alatt megmarad, és az értéke nem veszik el a függvényhívások között. A static kulcsszóval lehet deklarálni. Két fő típusa van:

1. Statikus változó egy függvényen belül

Ha egy változót egy függvényen belül static-ként deklarálsz, akkor annak értéke megmarad a függvényhívások között, de a láthatósága csak a függvényen belül érvényes.

Példa:

#include <iostream>

void countCalls() {
    static int count = 0; // Értéke megmarad a függvényhívások között
    count++;
    std::cout << "A függvényt eddig " << count << " alkalommal hívták meg.\n";
}

int main() {
    countCalls();
    countCalls();
    countCalls();
    return 0;
}

Kimenet:

A függvényt eddig 1 alkalommal hívták meg.
A függvényt eddig 2 alkalommal hívták meg.
A függvényt eddig 3 alkalommal hívták meg.

2. Statikus osztályváltozó

Osztályon belül a statikus adattagok közösek az osztály összes példánya között. Azaz, ha egy objektum módosítja az értékét, akkor az összes többi objektum is ezt az új értéket fogja látni.

Példa:

#include <iostream>

class Counter {
private:
    static int count; // Statikus osztályváltozó

public:
    Counter() { count++; }

    static void showCount() { // Statikus függvény, amely csak statikus változókat érhet el
        std::cout << "Létrehozott objektumok száma: " << count << std::endl;
    }
};

// Statikus változó inicializálása
int Counter::count = 0;

int main() {
    Counter obj1;
    Counter obj2;
    Counter obj3;

    Counter::showCount(); // Kiírja a példányok számát
    return 0;
}

Kimenet:

Létrehozott objektumok száma: 3

Összegzés

  • Statikus lokális változó: Megőrzi értékét a függvényhívások között.
  • Statikus osztályváltozó: Az osztály minden példánya ugyanazt a változót osztja meg.
  • Statikus függvény: Csak statikus adattagokat érhet el az osztályon belül.
  • Élettartam: A teljes programfutás alatt megmarad.

Hasznos, ha globális állapotokat akarsz kezelni, de korlátozott láthatóság mellett.