Глобальна змінна

Автор: Lewis Jackson
Дата Створення: 8 Травень 2021
Дата Оновлення: 15 Травень 2024
Anonim
Область видимости. Глобальные переменные и локальные переменные. C++ для начинающих. Урок #37
Відеоролик: Область видимости. Глобальные переменные и локальные переменные. C++ для начинающих. Урок #37

Зміст

Визначення - Що означає глобальна змінна?

Глобальна змінна - це конструкція мови програмування, тип змінної, яка оголошується поза будь-якою функцією та є доступною для всіх функцій у всій програмі. Група глобальних змінних називається глобальним станом або глобальним середовищем, оскільки в поєднанні вони визначають різні аспекти програми чи середовища, коли програма працює. Глобальна змінна, як правило, оголошується поверх усіх функцій і зводиться до мінімуму, оскільки всі функції можуть маніпулювати ними під час виконання програми, що вважається небезпечним для більшості програмістів, оскільки вони можуть бути випадково змінені, що призводить до помилок.


Вступ до Microsoft Azure та Microsoft Cloud | У цьому посібнику ви дізнаєтеся, що стосується хмарних обчислень та як Microsoft Azure може допомогти вам мігрувати та вести свій бізнес із хмари.

Техопедія пояснює глобальну змінну

Глобальні змінні, як випливає з назви, - це змінні, доступні в усьому світі або скрізь у всій програмі. Після оголошення вони залишаються в пам’яті протягом усього часу виконання програми. Це означає, що вони можуть бути змінені будь-якою функцією в будь-якій точці і можуть вплинути на програму в цілому. У перші роки комп'ютерів, де пам'ять була дуже обмеженою, вони стали вважатися поганою практикою, оскільки вони зайняли цінний простір пам'яті, і програмісту було дуже легко втратити свої значення, особливо в довгих програмах, що призвело до помилок, які можуть бути дуже важко знайти. Вихідний код найкраще розуміти, коли сфера його окремих елементів обмежена, тому через їх не локальність важко відслідковувати, де вони були змінені чи чому вони були змінені.


Навіть при цій стигмі глобальні змінні є цінними у функціях, які не поділяють відношення "виклик і виклик", наприклад, обробники сигналів та одночасні потоки. За винятком глобальних змінних, оголошених як значення лише для читання в захищеній пам'яті, коди повинні розгорнути належну інкапсуляцію, щоб вважатись "безпечною для потоків".

Ранні версії неструктурованих мов, таких як BASIC, COBOL та Fortran, використовували лише глобальні змінні. Однак такі мови, як Lua, Forth і Perl, використовують глобальні змінні за замовчуванням, як і більшість скриптів оболонок.