Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Деструктор- это функция, которая автоматически выполняется, когда экземпляр класса уничтожается.

Инициализация | Такой элемент должен быть определен в классе как статический. | Доступ к членам класса | Конструкторы и деструкторы | Параметров) | Друзья классов | StrokaZ; |


Читайте также:
  1. F52 Половая дисфункция, не обусловленная органическим расстройством или заболеванием
  2. IX. О ПОЛИТИЧЕСКОМ ДЕЙСТВИИ РАБОЧЕГО КЛАССА
  3. Quot; Я изрек пророчество, как повелено было мне; и когда я пророчествовал, произошел шум, и вот движение, и стали сближаться кости, кость с костью своею".
  4. Quot;Выглядите прилично" тогда, когда это приносит пользу
  5. Quot;Скажи: "Никогда не постигнет нас ничто, кроме того, что предначертал нам Аллах. Он - наш Мавля!" И на Аллаха пусть полагаются верующие!" (Покаяние, 51).
  6. Quot;Это слияние с энергией и есть молитва. Она изменяет вас, а когда изменяетесь вы, изменяется и все Бытие".
  7. REBEL BELLES: Когда красавицы бунтуют....

Используется: а) если объект – локальный и ему динамически выделялась память, целесообразно, чтобы при выходе из блока, когда объект перестает существовать, память была возвращена системе. Желательно, чтобы память освобождалась автоматически;

б) объект выходит из области видимости (при завершении программы или

функции).

Формат компонентной функции-деструктора

~ имя класса () { операторы тела деструктора};

 

1) Между тильдой и именем класса нет пробелов.

2) У деструктора нет типа результата даже void и нет параметров даже типа void.

3) Деструктор выполняется неявно, автоматически, как только объект уничтожается. Его никогда не вызывают, но можно и вызывать явно, если он определен в классе

<имя объекта>. ~ <имя класса>;

При этом объект будет продолжать существовать, только выполняться те действия, которые записаны в теле деструктора.

Пример 1.

… сlass Book {

public:

char title[40];

char author[20];

Float price

Book (char*atitle, char*aauthor, float aprice); // прототип

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

~Book(); // прототип деструктора

void show_book(void) { cout<< title<< “, “<<price};

};

Book::Book(char*atitle, char*aauthor, float aprice)

{ strcpy(title, atitle); strcpy(author, aauthor);

price = aprice; }

Book::~Book()

{ cout << “Уничтожение экземпляра:”<< title<<”\n”;}


Дата добавления: 2015-07-20; просмотров: 41 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Конструктора);| Имя объекта. имя компонента

mybiblioteka.su - 2015-2024 год. (0.008 сек.)