2.1.3 Время Жизни

2.1.3 Время Жизни

Если программист не указал иного, то объект создается, когда встречается его описание, и уничтожается, когда его имя выходит из области видимости, Объекты с глобальными именами создаются и инициализируются один раз (только) и «живут» до завершения программы. Объекты, определенные описанием с ключевым словом static, ведут себя так же. Например*:

– * Команда #include «stream.h» была выброшена из примеров в этой главе для экономии места. Она необходима в примерах, производящих вывод, чтобы они были полными. (прим. автора)

int a = 1;

void f() (* int b = 1; // инициализируется при каждом // вызове f() static int c = 1; // инициализируется только один раз cout «„ " a = " «« a++ «« " b = " «« b++ «« " c = " «« c++ «« « “; *)

main() (* while (a « 4) f(); *)

производит вывод

a = 1 b = 1 c = 1 a = 2 b = 1 c = 2 a = 3 b = 1 c = 3

Не инициализированная явно статическая (static) переменная неявно инициализируется нулем.

С помощью операций new и delete программист может также создавать объекты, время жизни которых управляется непосредственно, см. #3.2.4.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Смысл жизни – 2

Из книги автора

Смысл жизни – 2 Вам случалось когда-нибудь в теплую летнюю ночь лежать, глядя на звезды, и думать, почему вы живете на свете? Каково ваше место в жизни и как следует жить дальше?Да, вот и мне не случалось.Тем не менее я выработал собственную теорию жизни, Вселенной и всего на


12.14.2 Время жизни (Time-To-Live)

Из книги автора

12.14.2 Время жизни (Time-To-Live) В RFC 1035 (специфицирует протокол DNS) заявлено, что TTL в записи SOA — это минимальное значение тайм-аута, разрешенное для всех записей. Но на практике администратору хочется использовать TTL в записи SOA как значение по умолчанию, указывая меньшие значения


Знакомства «для жизни»

Из книги автора

Знакомства «для жизни» Люди с Самыми Серьезными Намерениями. Цель поиска – как минимум, хороший и долгоиграющий друг, как максимум – большая любовь на всю оставшуюся жизнь (или хотя бы на ее часть, превышающую 24 часа).Наш выбор – сайты знакомств! И то, как мы увидим ниже,


16. Радуюсь жизни…

Из книги автора

16. Радуюсь жизни… • Вопрос 44: Поставил НОД Админ Рус 2.51.26 на ноут Gateway (Celeron-300, RAM 64, WinXP SP1), обновил базу до текущей версии. При стартах НОД говорит - не удалось запустить резидентную защиту. Для того, чтобы запустить ее руками, надо подождать минут 5, иначе не запускается.


Время жизни сервера

Из книги автора

Время жизни сервера В предыдущих разделах было показано, как СОМ автоматически загружает DLL с целью перенесения реализации объектов в адресное пространство клиентских программ. Однако пока не обсуждалось, как и когда эти DLL выгружаются. Вообще говоря, серверные DLL могут


Время жизни и область действия

Из книги автора

Время жизни и область действия Понятия "время жизни" и "область действия" являются очень важными для понимания структуры программ на языке Си. Время жизни переменной может быть либо "глобальным", либо "локальным". Объект с глобальным временем жизни характеризуется тем, что


8. Область видимости и время жизни

Из книги автора

8. Область видимости и время жизни В этой главе обсуждаются два важных вопроса, касающиеся объявлений в С++. Где употребляется объявленное имя? Когда можно безопасно использовать объект или вызывать функцию, т.е. каково время жизни сущности в программе? Для ответа на


Радуйся жизни!

Из книги автора

Радуйся жизни! А я говорю вам: когда вы трудитесь, вы исполняете часть самой ранней мечты земли, уготованную вам в те времена, когда эта мечта родилась. И работая, вы истинно любите жизнь. А возлюбить жизнь через работу — значит приблизиться к глубочайшей тайне


Примеры из реальной жизни

Из книги автора

Примеры из реальной жизни Ниже приведены некоторые примеры переполнения буфера, взятые из базы данных типичных уязвимостей и брешей (CVE) на сайте http://cve.mitre.org. Интересно, что когда мы работали над этой книгой, в базе CVE по запросу «buffer overrim» находилось 1734 записи. Поиск по


Примеры из реальной жизни

Из книги автора

Примеры из реальной жизни Следующие примеры взяты из базы данных CVE (http://cve.mitre.org). Это лишь небольшая выборка из 188 сообщений об ошибках при работе с форматной строкой.CVE–2000–0573Цитата из бюллетеня CVE: «Функция lreply в FTP–сервере wu–ftpd версии 2.6.0 и более ранних плохо


Примеры из реальной жизни

Из книги автора

Примеры из реальной жизни Любопытно, что, несмотря на чрезвычайно широкое распространение этого греха (в тот или иной момент от этой проблемы страдали по меньшей мере 90% приложений, в которых использовался SSL, но не HTTPS), во время работы над книгой в базе данных CVE


2.1.3 Время Жизни

Из книги автора

2.1.3 Время Жизни Если программист не указал иного, то объект создается, когда встречается его описание, и уничтожается, когда его имя выходит из области видимости, Объекты с глобальными именами создаются и инициализируются один раз (только) и «живут» до завершения


Телефон на все случаи жизни [121]

Из книги автора

Телефон на все случаи жизни [121] Для того чтобы компания эффективно работала, необходимо сокращать затраты на управление и на предоставляемые услуги. При этом качество услуг должно повышаться, а их спектр – расширяться. Эти противоречивые требования не возможно


Из жизни шпионов

Из книги автора

Из жизни шпионов Автор: Киви Берд Уходящие на пенсию шпионы всегда уносят в памяти ворох колоритных историй из того ряда, про который парадоксально говорят «слишком неправдоподобно, чтобы быть вымыслом». К сожалению, далеко не все решаются эти истории рассказывать