Sobes.tech
Junior — Middle

Чӣ гуна истифодаи калимаи калидии static ба хусусиятҳои тағйирёбҳои глобалӣ дар барнома таъсир мерасонад?

sobes.tech AI

Ҷавоб аз AI

Ключовата дума static при обявяване на глобална променлива в C/C++ ограничава обхвата на тази променлива до текущия файл (единица за превод). Това означава, че такава променлива няма да бъде видима и достъпна от други файлове, дори ако те включват този файл чрез extern.

По този начин, static прави глобалната променлива вътрешна за файла, предотвратявайки конфликти с имена и осигурявайки инкапсулация на ниво файл.

Пример:

// file1.c
static int counter = 0; // видима само в file1.c

void increment() {
    counter++;
}

// file2.c
extern int counter; // Грешка: counter не е видима поради static