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-ով չի տեսանելի