Любое понятие не существует изолированно,
Любое понятие не существует изолированно, оно существует во взаимосвязи с другими понятиями, и мощность данного понятия во многом определяется наличием таких связей. Раз класс служит для представления понятий, встает вопрос, как представить взаимосвязь понятий. Понятие производного класса и поддерживающие его языковые средства служат для представления иерархических связей, иными словами, для выражения общности между классами. Например, понятия окружности и треугольника связаны между собой, так как оба они представляют еще понятие фигуры, т.е. содержат более общее понятие. Чтобы представлять в программе окружности и треугольники и при этом не упускать из вида, что они являются фигурами, надо явно определять классы окружность и треугольник так, чтобы было видно, что у них есть общий класс - фигура. В лекции исследуется, что вытекает из этой простой идеи, которая по сути является основой того, что обычно называется объектно-ориентированным программированием. Лекция состоит из шести разделов:
§6.2с помощью серии небольших примеров вводится понятие производного класса, иерархии классов и виртуальных функций.
§6.3 вводится понятие чисто виртуальных функций и абстрактных классов, даны небольшие примеры их использования.
§6.4 производные классы показаны на законченном примере
§6.5 вводится понятие множественного наследования как возможность иметь для класса более одного прямого базового класса, описываются способы разрешения коллизий имен, возникающих при множественном наследовании.
§6.6 обсуждается механизм контроля доступа.
§6.7 приводятся некоторые приемы управления свободной памятью для производных классов.
В последующих лекциях также будут приводиться примеры, использующие эти возможности языка.