Re[6]: Множественное наследование интерфейсов
От: AlexGin Беларусь  
Дата: 13.06.18 08:30
Оценка:
Здравствуйте, SaZ, Вы писали:

SaZ>Здравствуйте, AlexGin, Вы писали:


AG>>У класса может быть только один деструктор!


SaZ>Ага, конечно. Смотрите, у класса A сразу три деструктора!

SaZ>
SaZ>class A : public B, public C {};
SaZ>


У класса A — один деструктор!
При разрушении объекта класса A — вызываются деструкторы базовых классов (если они определены) — точнее: сначала свой деструктор (класса A), затем деструкторы базовых классов. Это поведение — стандартно для C++.

При создании объекта — всё происходит противоположно:
Первоначально отработают конструкторы базовыйх классов, а затем уже конструктор нашего (наследника).

AG>>Деструктор — не принимает никаких аргументов.

AG>>В деструкторе следует очистить все ресурсы, используемые в объекте данного класса и требующие очистки.

SaZ>Главное — не выкинуть при этом исключений

+100500
Также, как и в любых деструкторах...

SaZ>И вообще, это зависит от реализуемой логики.

+100500
...естесственно...
Отредактировано 13.06.2018 8:42 AlexGin . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.