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