Змінні c++: відмінності між версіями
[неперевірена версія] | [неперевірена версія] |
Вилучено вміст Додано вміст
правопис |
|||
Рядок 2:
== Атрибути змінних<ref>Х.М. Дейтел, П.Дж. Дейтел "КАК ПРОГРАММИРОВАТЬ НА C++" пятое издание
</ref> ==
Змінна — це абстрактна назва комірки чи декількох комірок пам'яті. Кожна змінна має шість атрибутів:
адресу, значення, тип, область видимості і час життя.
Адреса змінної — це адреса комірки пам'яті, зв'язаної з даною змінною. Якщо змінна займає декілька
осередків, її адресою вважається адреса першого осередку. У різних місцях програми можуть існувати різні
змінні, що мають однакові
і f2(), у кожній з них можна визначити змінну, що має
вони зв'язані з різними функціями і відділені одна від одної невидимою стіною, що обмежує їхню область
видимості. Такі змінні називаються локальними. Вони з'являються усередині функцій чи окремих блоків.
Глобальні змінні доступні в будь-якій точці програми. Оголошення глобальної змінної повинне знаходитися
поза будь-якою функцією. Їхні
називається маскуванням), але при цьому виникає конфлікт
оператор розв’язування області видимості ::. Глобальна змінна існує від моменту її оголошення і знищується
після завершення роботи програми.
Рядок 26:
Змінна стає доступною, лише якщо вона зв'язана з типом даних. Тут важливі два моменти: яким чином
указується тип і коли відбувається зв’язування. У мовах програмування тип указується за допомогою
оголошення: явного чи неявного. Явне оголошення — це оператор програми, у якому перераховані
змінних і зазначений їхній тип. Неявне оголошення — це механізм зв'язування змінних з типами на основі
прийнятих угод. У цьому випадку оператор оголошення не потрібний — перша поява
вважається її неявним оголошенням. Класичний приклад неявного оголошення змінних можна зустріти в
програмах мовою [[FORTRAN]], у якому всі змінні,
замовчуванням вважаються цілочисельними, а інші — дійсними. І явне, і неявне оголошення є статичними.
Область видимості і час життя змінної тісно зв'язані між собою. Будь-яку змінну необхідно зв'язати зі
Рядок 123:
=== Автоматичні змінні ===
Автоматичними називаються змінні, які з коміркою зв'язуються динамічно, тобто під час виконання
операторів оголошення, а з типом — статично. Такі змінні
створюються і знищуються без утручання програміста.
У мові C++ усі локальні змінні за замовчуванням є автоматичними. За винятком адреси, всі атрибути
Рядок 139:
функції.
=== Динамічні змінні ===
Динамічні змінні не мають
Оператор виділення пам'яті <code>new</code> у якості операнда використовує
=== Реєстрові змінні ===
|