Predpoklady : Rozsah premenných , Funkcie v C++
V programovacích jazykoch C++ je premenná názov poskytnutý pamäti na ukladanie rôznych typov údajov. Hodnoty premennej sa môžu kedykoľvek počas spustenia programu meniť a každá premenná má svoj vlastný rozsah (alebo oblasť), v ktorej je platný prístup k premennej pomocou jej prideleného názvu.
V programovaní nie sú všetky premenné rovnaké. Ich rozsah, životnosť a dostupnosť v programe závisia od toho, kde a ako sú deklarované. Existujú dva typy premenných na základe ich rozsahu.
- Lokálna premenná – Rozsah týchto premenných existuje len v rámci bloku, v ktorom je premenná deklarovaná. tj k tejto premennej môžeme pristupovať iba v rámci daného bloku. Globálna premenná – Globálne premenné sú špeciálnym typom s čo najširším rozsahom. Je deklarovaný mimo všetkých funkcií a blokov, v hornej časti programu. Sú prístupné z ktorejkoľvek časti programu.
Globálna premenná v C++
Globálne premenné sú premenné, ktoré sú deklarované mimo akejkoľvek funkcie alebo triedy a sú prístupné z ktorejkoľvek časti programu. Vo všeobecnosti sú deklarované na začiatku zdrojového súboru po hlavičkovom súbore. Sú dostupné počas celej životnosti programu a sú dostupné odkiaľkoľvek v rámci programu.
Deklarácia globálnej premennej v C++
Aby sme vytvorili globálnu premennú, jednoducho ju deklarujeme v hornej časti zdrojového súboru, za hlavičkovými súbormi a pred hlavnou funkciou. V C++ musia byť všetky premenné pred použitím deklarované.
Príklad 1
C++
// C++ Program to illustrate Global Variable> // header files> #include> using> namespace> std;> > // global variable> int> x = 10;>// x is a global variable initialized to 10> > // main function> int> main()> {> >cout << x;> >return> 0;> }> |
rozdiel medzi ľadom a snehom
>
Proces Android acore sa stále zastavuje
>Výkon
10>
Vysvetlenie
- V tomto príklade je „x“ globálna premenná, do ktorej je možné uložiť celočíselné hodnoty.
- Pri spustení programu sa inicializuje na 10.
- Keďže je deklarovaný mimo akejkoľvek funkcie alebo triedy, môže k nemu pristupovať a upravovať ho ľubovoľná funkcia alebo trieda v programe.
Teraz by sa niekto mohol čudovať, prečo by ste chceli vo svojom programe používať globálne premenné.
Príklad 2
C++
to je
// C++ program to illustrate> // usage of global variables> #include> using> namespace> std;> > // global variable> int> global = 5;> > // global variable accessed from> // within a function> void> display() { cout << global << endl; }> > // main function> int> main()> {> >display();> > >// changing value of global> >// variable from main function> >global = 10;> >display();> }> |
>
>Výkon
5 10>
Vysvetlenie
- V tomto príklade je „int global“ globálna premenná, v ktorej je uložená celočíselná hodnota.
- Pri spustení programu sa inicializoval s 5.
- Potom toto volanie prejde na hlavnú funkciu a potom zavolá funkciu display, ktorá vypíše globálnu premennú.
- Po vytlačení 5 sa hodnota globálnej premennej zmení na 10. Teraz sa opäť vyvolá funkcia display a vypíše sa nová hodnota premennej global 10.
Výhody používania globálnych premenných
Nasleduje niekoľko hlavných výhod, ktoré globálne premenné poskytujú:
- Ku globálnej premennej môžu pristupovať priamo všetky funkcie bez zadávania argumentu v programe.
- Globálne premenné sú veľmi užitočné, keď mnoho funkcií pristupuje k rovnakej premennej.
- Globálna premenná vyžadovala iba jednorazovú deklaráciu v programe.
Nevýhody používania globálnych premenných
Globálne premenné majú aj určité nevýhody. Niektoré z nich sú:
- Globálna premenná môže niekedy spôsobiť konfliktné problémy, pretože sa ich viaceré programy pokúšajú upraviť súčasne, zvyčajne v programoch s viacerými vláknami.
- Niekedy môže viesť k premenlivému tieňovaniu.
- Globálne premenné môžu spôsobiť, že kód bude menej čitateľný a menej udržiavateľný.
- Existuje tiež určitá obava o bezpečnosť a chyby, pretože môžu byť upravené alebo prístupné z ktorejkoľvek časti programu.
- Niekedy, ak použijete väčšie číslo v globálnej premennej, existuje vysoká pravdepodobnosť chyby v programe.
Záver
Globálne premenné sú veľmi užitočné, ale „ťažko sa sledujú“ premenné v programovacom jazyku C++. Sú užitočné, pretože môžeme pristupovať k rovnakej premennej v ktorejkoľvek časti programu, ale musí byť použitá tak, aby kód neznižoval čitateľnosť a údržbu, a tiež sa stará o bezpečnostné aspekty. Preto sa odporúča používať globálne premenné zriedkavo a opatrne a vždy, keď je to možné, uprednostňovať lokálne premenné alebo iné alternatívy.