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; // შეცდომა: static-ის გამო არ ჩანს