19823

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

Доклад

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

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

Украинкский

2013-07-17

25 KB

5 чел.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

єкта.

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

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

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

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

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

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

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

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

об'єкта.

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

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


 

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

10462. Ядро операционной системы 35.56 KB
  Тема: Ядро операционной системы. Ядро центральная часть операционной системы ОС обеспечивающая приложениям координированный доступ к ресурсам компьютера таким как процессорное время память и внешнее аппаратное обеспечение. Также обычно ядро предоставляет сервис...
10463. Операционные системы реального времени. Архитектуры ОСРВ 56.33 KB
  Тема: Операционные системы реального времени. Операционная система реального времени ОСРВ англ. RealTime Operating System тип операционной системы. Есть много определений термина по сути похожих друг на друга. Самые распространённые из них: Операционная система в ...
10464. Стандарты ОСРВ 37.03 KB
  Тема: Стандарты ОСРВ. Большие различия в спецификациях ОСРВ и огромное количество существующих микроконтроллеров выдвигают на передний план проблему стандартизации в области систем реального времени. Наиболее ранним и распространенным стандартом ОСРВ является...
10465. Настраиваемость операционных систем 69.04 KB
  Тема: Настраиваемость операционных систем. В последнее время одной из главных тем исследовательских работ в области операционных систем стало исследование настраиваемости customizability или адаптируемости операционной системы. Настраиваемой или адаптируемой операци
10466. Сетевые операционные системы, Управление локальными ресурсами 75.65 KB
  Сетевые операционные системы. Структура сетевой операционной системы Сетевая операционная система составляет основу любой вычислительной сети. Каждый компьютер в сети в значительной степени автономен поэтому под сетевой операционной системой...
10468. Сетевые операционные системы. Управление локальными ресурсами 144.5 KB
  Тема: Сетевые операционные системы. Управление локальными ресурсами. 1. Управление вводомвыводом Одной из главных функций ОС является управление всеми устройствами вводавывода компьютера. ОС должна передавать устройствам команды перехватывать прерывания и об
10469. Сетевые операционные системы. Управление распределенными ресурсами 158.47 KB
  Тема: Сетевые операционные системы. Управление распределенными ресурсами. Базовые примитивы передачи сообщений в распределенных системах. Единственным по-настоящему важным отличием распределенных систем от централизованных является межпроцессная вз...
10470. Современные концепции и технологии проектирования операционных систем 66.59 KB
  Тема: Современные концепции и технологии проектирования операционных систем. Требования предъявляемые к ОС. Операционная система является сердцевиной сетевого программного обеспечения она создает среду для выполнения приложений и во многом определя...