19823

Ініціалізація та руйнування об’єкта (конструктори та деструктори)

Доклад

Информатика, кибернетика и программирование

Ініціалізація та руйнування об’єкта конструктори та деструктори. Як правило певну частину об'єкта перш ніж його можна буде використову вати необхідно ініціалізувати. Наприклад розглянемо клас myClass який було представлено вище у цьому підрозділі. Перш ніж об'єк

Украинкский

2013-07-17

25 KB

4 чел.

Ініціалізація та руйнування об’єкта (конструктори та деструктори).

Як правило, певну частину об'єкта, перш ніж його можна буде використову-

вати, необхідно ініціалізувати. Наприклад, розглянемо клас myClass, який було

представлено вище у цьому підрозділі. Перш ніж об'єкти класу myClass можна бу-

де використовувати, змінній a потрібно надати нульове значення. У нашому ви-

падку ця вимога виконувалася за допомогою функції Init(). Але, оскільки вимога

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

C++ передбачено реалізацію цієї потреби при створенні об'єктів класу. Така авто-

матична ініціалізація членів-даних класу здійснюється завдяки використанню

конструктора.

Конструктор – це спеціальна функція-член класу, яка викликається при створенні об'єкта, а її ім'я обов'язково збігається з іменем класу.

Конструктор об'єкта викликається при створенні об'єкта. Це означає, що він

викликається у процесі виконання настанови створення об'єкта. Конструктори

глобальних об'єктів викликаються на самому початку виконання програми, тобто

ще до звернення до функції main(). Що стосується локальних об'єктів, то їх конс-

труктори викликаються кожного разу, коли виникає потреба створення такого об'-

єкта.

Доповненням до конструктора слугує деструктор – це функція, яка викли-

кається під час руйнування об'єкта. У багатьох випадках під час руйнування об'-

єкта необхідно виконати певну дію або навіть певні послідовності дій. Локальні

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

при виході з нього. Глобальні об'єкти руйнуються внаслідок завершення програ-

ми. Існує багато чинників, які заставляють використовувати деструктори. Наприк-

лад, об'єкт повинен звільнити раніше виділену для нього пам'ять. У мові програ-

мування C++ саме деструкторам доручається оброблення процесу деактивізації

об'єкта.

Ім'я деструктора має збігатися з іменем конструктора, але йому передує сим-

вол "~". Подібно до конструкторів, деструктори не повертають значень, а отже, в їх оголошеннях відсутній тип значення, що повертається.


 

А также другие работы, которые могут Вас заинтересовать

45428. Системы беспроводной связи 96.5 KB
  Системы беспроводной связи начали развиваться с 2000 01 года в связи с появлением стандарта GSM. Основное применение беспроводных средств связи стало развитие протокола Ethernet а также необходимостью обеспечения коммуникации узлов находящихся на территориях не охваченных телефонной связью. Первым развитием беспроводных каналов связи стала беспроводная телефонная связь.
45429. Стандарт Wi-Fi 296.5 KB
  Любой абонент с WiFi точкой доступа может получить доступ к локальной сети. Эта проблема решается с помощью разработки системы безопасности локальной сети. Достоинство: для построения сети на основе распределенной архитектуры достаточно установить несколько точек доступа. Развертывание такой сети является установка точки доступа в свободный порт маршрутизатора или коммутатора.
45430. Технология GPRS 340 KB
  GPRS – Generl Pcket Rdio Service – технология разработанная в 1991 году Европейским институтом ТК стандартов позволяющие передавать получать данные из сети Internet с применением мобильной связи на основе GSM. GPRS предоставляет следующие сервисы работа с электронной почтой; Httpинтерфейс. GPRS позволяет читать данные в том формате который является общедоступным для сетевых узлов.
45431. Эволюционное программирование (генетические алгоритмы) 57.5 KB
  Метод алгоритм пример решения задачи Эволюционное программирование генетические алгоритмы Для эволюционного программирования должны выполняться следующие требования: 1Наличие пространства параметров x = {x1x2x3.е случайное варьирование параметров. Хромосома вектор варьируемых параметров решения Операции получение новых решений из существующих Скрещивание получение параметров хромосомы от родителей расширение области поиска Мутация ...
45432. Модель нейрона. Понятие нейронной сети. Особенности функционирования технических структур, моделируемых нейронной сетью 92 KB
  Схема работы натрийкалиевого насоса: а активные центры захватили ион калия снаружи и ион натрия внутри клетки; б белковая молекула захватившая ионы повернулась на 180 за счет энергии АТФ и освободила захваченные ионы при этом калий попал внутрь клетки а ион натрия был выброшен наружу в молекула вновь повернулась на 180 и готова к захвату новых ионов. Диффузия в жидкостях происходит при помощи ионов. Идет расслаивание ионов возникает потенциал...
45433. Модель обучения на примере автоматов с линейной тактикой. Автомат с переменной структурой 124.5 KB
  Автомат с переменной структурой. Рациональность поведения автомата в детерминированной стохастической стационарной и нестационарной среде. Автомат с линейной тактикой рис.
45434. Применение метода оценочной функции при реализации интеллектуальных функций. Уровни интеллектуальности поведения 61.5 KB
  Черепаха представляет собой трехколесную тележку на которой размещены аккумуляторы система реле и электронная ламповая схема. Схема отрегулирована таким образом что при низком потенциале анода лампы Л1 запирается лампа Л2 и реле Р2 устанавливается так что исключается одновременное нахождение под током реле P1 и Р2. При умеренном освещении фотоэлемента лампа Л2 приоткрывается однако проводимый ею ток недостаточен для срабатывания реле P1 хотя уменьшение напряжения на аноде лампы и приводит к отпусканию реле Р2. Замыкание...
45435. Модели языка. Синтез и анализ языковых фрагментов. Проблема представления знаний 351 KB
  Проблема представления знаний Язык Человек лингвизирует свой мир живет в мире пересотворяемом с помощью его собственного языка. Границы языка границы мира. Если два языка подобны некой системе то они подобно друг другу.
45436. Понятие ядра и процесса, состояние процесса, подпроцессы. Межпроцессное взаимодействие 175.5 KB
  Межпроцессное взаимодействие Резидентная в RM часть OS UNIX называется ядром. Все работы вне ядра оформлены в виде процессов выполнения системных и прикладных программ. Под процессом понимается единица вычислительной работы потребляющая ресурсы предоставляемые ядром для обработки системных и прикладных программ которые оформлены как командные или выполняемые файлы на внешнем устройстве.