- Инкапсуляция.
- Наследование: 4 класса, один из которых абстрактный.
- Полиморфизм: использование конструкторов, а так же их перегрузки.
- Виртуальные функции.
- Множественное наследование (наследование 3-х классов).
- Конструкторы копирования.
- Параметры по умолчанию.
- Использование объектов в качестве аргументов или возвращаемых значений.