Поделиться через


Общие сведения о производных классах

Новые классы могут наследоваться от существующих классов с помощью механизма "наследования" (см. сведения начиная с раздела Одиночное наследование). Классы, используемые для наследования, называются "базовыми классами" определенного производного класса. Производный класс объявляется с помощью следующего синтаксиса:

 class Derived : [virtual] [access-specifier] Base
{
   // member list
};
 class Derived : [virtual] [access-specifier] Base1,
 [virtual] [access-specifier] Base2, . . .
{
   // member list
};

После тега (имени) класса следует двоеточие и список базовых спецификаций. Названные таким образом базовые классы, вероятно, были объявлены ранее. Базовые спецификации могут содержать описатель доступа, представляющий собой одно из ключевых слов: public, protected или private. Эти описатели доступа отображаются перед именем базового класса и применяются только к базовому классу. Эти описатели контролируют разрешение производного класса на использование членов базового класса. Сведения о доступе к членам базового класса см. в разделе Контроль доступа к членам. Если описатель доступа пропущен, доступ к базе считается private. Базовые спецификации могут содержать ключевое слово virtual, указывающее на виртуальное наследование. Это ключевое слово может отображаться до или после описателя доступа, если таковые имеются. Если используется виртуальное наследование, базовый класс называется виртуальным базовым классом. Дополнительные сведения см. в разделе Виртуальные базовые классы.

Можно определить несколько базовых классов, разделив их запятыми. Если определен один базовый класс, модель наследования называется Одиночное наследование. Если определено несколько базовых классов, модель наследования называется Множественное наследование.

См. также

Ссылки

Производные классы