Продолжительность существования объекта (время жизни)
Продолжительность существования объекта (время жизни) -это интервал времени выполнения программы, в течение которого программный объект (переменная или функция) существует.
Существует три разновидности продолжительности существования:
– статическая, объект существует в течение всего времени выполнения программы;
– локальная, объект существует в пределах выполнения операторов блока;
– динамическая, объект создается и удаляется явным образом с помощью специальных функций (или операторов в Си++).
–
2.2.5. Тип компоновки (связывания)
Тип компоновки (связывания)определяет соответствие идентификатора конкретному объекту в программе, исходный текст которой размещен в нескольких файлах, т.е. можно ли идентификатор использовать в нескольких файлах проекта или его можно использовать только в одном файле.
Два вида связывания:
• внутреннее, к объекту можно обращаться только в одном файле (модуле) проекта;
• внешнее, к объекту можно обращаться из различных файлов (модулей) проекта, при этом переменная в одном файле должна быть определена, а в других файлах описана с модификатором extern.
Взаимосвязь классов памяти и других атрибутов объектов представлена в таблице 2.
Таблица 2 – Взаимосвязь атрибутов объектов
Класс памяти | Атрибуты объектов | |||
Область действия | Область видимости | Продолжительность существования | Тип связывания | |
auto | От точки описания до конца блока за исключением внутренних блоков, если в них повторно используется идентификатор | От точки описания до конца блока за исключением внутренних блоков, если в них повторно используется идентификатор | Локальная | Внутреннее связывание |
register | ||||
static | От точки описания до конца файла (блока) | От точки описания до конца блока за исключением внутренних блоков, если в них повторно используется идентификатор | Статическая | |
extern | Внешне связывание |
Дата добавления: 2015-08-14; просмотров: 888;