CPP C++ logo

Виртуальные функции. Что это такое?

  • Часть 1 – В первой части попытаемся разобраться в общей теории виртуальных функций.
  • Часть 2 – Давайте продолжим начатое в первой части статьи рассмотрение использования виртуальных функций. На этот раз я предлагаю вам конкретный пример. Пусть очень простой, но зато он полностью работоспособен, и позволяет продемонстрировать все тонкости, о которых вы уже прочитали. Но, для начала, еще немного теории, которая не вошла в первую часть.
  • Часть 3 – Этой частью мы завершим начатое в первой и второй частях статьи рассмотрение использования виртуальных функций.

Классы: копирование и присваивание

  • Часть вводная – Серия статей по работе с классами.
  • Часть 1. – Классы: копирование и присваивание.
  • Часть 2. – В этой части мы попытаемся подробно рассмотреть понятие буквального и развернутого копирования. Под словом “копирование” здесь мы будем подразумевать дублирование объектов, как посредством операции присваивания, так и с помощью конструктора копий.
  • Часть 3. – Продолжим начатое в статьях “Классы: копирование и присваивание. Часть 1 и Часть 2” подробное рассмотрение проблемы копирования и присваивания в классах. В этой части мы рассмотрим разницу между копированием и присваиванием, посмотрим, когда выполняется копирование, и обсудим положение конструктора копий и операции присваивания в классах.
  • Часть 4. – В этой части мы рассмотрим как можно заблокировать копирование и присваивание, как можно реализовать копирование через присваивание, и обсудим проблемы копирования в производных (дочерних, а может сыновних?) классах.

operator= Рассмотрим подробно

  • Часть 1. Он возвращает ссылку на *this. А почему? – В серии статей, объединенных общим названием “Классы. Копирование и присваивание” тема оператора присваивания уже рассматривалась. Однако, “за бортом” осталось подробное рассмотрение вопросов “зачем” и “почему” необходимо делать то, или иное в операторе присваивания.