Sobes.tech
Junior

Mis juhtub, kui deklareerime globaalse muutuja static modifikaatoriga?

sobes.tech AI

Vastus AI-lt

Nähtavuse valdkond on piiratud failiga, milles see on deklareeritud. Muutuja on nähtav ainult selles failis.

Elutsükkel jääb samaks: muutuja luuakse programmi käivitamisel ja hävitatakse selle lõpus.

Näide:

// fail1.cpp
static int globalStaticVar = 10;

void func1() {
    // Juurdepääs globalStaticVar võimalus
    globalStaticVar++;
}
// fail2.cpp
extern int globalStaticVar; // Kompileerimisviga: globalStaticVar ei ole nähtav

void func2() {
    // Juurdepääs globalStaticVar ei ole võimalik
}