logo

Що таке глобальна змінна?

Змінна — це ім’я, призначене для області зберігання, якою може керувати програма. Тип змінної визначає розмір і конфігурацію пам'яті змінної.

Діапазон значень, які можна вставити у змінну, обчислюється перед вставленням у неї значення, оскільки тип змінної має бути визначений перед вставленням у неї значення.

Область змінних

Область дії змінної — це буквально тривалість життя змінної. Це блок коду, в якому змінна дійсна або ще жива.

 function poo() { var a; } 

У функції 'a' ми оголошуємо змінну 'poo'. Область цієї змінної залишається в межах цієї функції, і її не можна використовувати поза цією функцією.

Є три місця, де ми можемо використовувати змінну в нашому програмуванні.

  • У функції або всередині блоку тоді кажуть, що це локальні змінні
  • Якщо використовується поза всіма функціями, воно називається глобальними змінними
  • Якщо він використовується у визначенні параметрів функції, він називається формальним параметром.

Основна різниця

  • Змінна, оголошена в межах функції, називається локальною змінною, тоді як змінна, оголошена поза функцією, називається глобальною змінною.
  • З іншого боку, коли функція почала виконання і втрачається, коли функція завершується, глобальні змінні створюються, коли починається виконання, і втрачаються, коли програма завершується. Створюються локальні змінні.
  • Локальна змінна не включає спільний доступ до даних, тоді як спільний доступ до даних задається глобальною змінною.
  • Локальні змінні зберігаються в стеку, тоді як глобальна змінна зберігається програмістом у фіксованому місці.
  • Для локальних змінних необхідні параметри, тоді як глобальну змінну не потрібно передавати.
Параметр Місцевий Глобальний
Область застосування Всередині функції. Область дії поза функцією.
Значення Якщо значення не ініціалізовано, дасть сміттєве значення. Якщо значення не ініціалізовано, за умовчанням буде нуль.
Час життя Створюється, коли функція починає виконання, і втрачається, коли функції завершуються. Створюється перед початком глобального виконання програми та втрачається, коли програма завершується.
Обмін даними Неможливо. можливо.
Параметри Вимагається. Не вимагається.
Доступ до Локальні змінні Ми можемо отримати доступ до глобальних змінних у всій програмі.
Зберігання пам'яті На стеку. У фіксованому місці, призначеному комп’ютером.

Локальна змінна

Локальна змінна вказується в блоці програмування або підпрограмах як форма оголошеної змінної. Локальна змінна зберігається до виконання блоку функції. Після цього його буде автоматично втрачено.

Приклад локальної змінної

 public int sum(){ int x =4; int y=5; return x+y; } 

Тут «x» і «y» є локальними змінними

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

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

Приклад глобальної змінної

 int x =4; int y=5; public int add(){ return x+y; } 

Тут «x» і «y» є глобальними змінними.

Переваги використання глобальних змінних

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

Недоліки використання глобальних змінних

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

Переваги використання локальних змінних

  • Значення змінних залишаються незмінними під час виконання завдання — це основне значення локальної змінної.
  • Якщо одна змінна, яка виконується одночасно, змінюється багатьма завданнями, результат може бути непередбачуваним. Однак оголошення її як локальної змінної вирішить її.
  • Ми можемо призначити однакові назви змінним у різних функціях.
  • Коли функція виконується, пам'ять змінної звільняється.

Недоліки локальних змінних

  • Метод налагодження локальної змінної дуже складний.
  • Популярні дані необхідно передавати регулярно, оскільки обмін даними між модулями неможливий.
  • Вони мають дуже малий спектр.

Що корисніше?

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