Конструктор - производный класс - Большая Энциклопедия Нефти и Газа, статья, страница 2
Быть может, ваше единственное предназначение в жизни - быть живым предостережением всем остальным. Законы Мерфи (еще...)

Конструктор - производный класс

Cтраница 2


Поскольку производный класс наследует элементы базового класса, то при создании объекта производного класса должен быть вызван конструктор базового класса для задания начальных значений элементам базового класса, содержащимся в объекте производного класса. В конструкторе производного класса при явном вызове конструктора базового класса может быть предусмотрен список инициализаторов элементов; в противном случае конструктор производного класса будет неявно вызывать конструктор базового класса с умолчанием.  [16]

17 Определение класса Basel ( часть 1 из 6.| Определение класса Base2 ( часть 2 из 6. [17]

Обратите внимание, как обозначается сложное наследование с помощью двоеточия (:) после class Derived - просто списком открытых базовых классов, разделенных запятыми. Заметьте также, что конструктор производного класса Derived вызывает каждый из своих базовых конструкторов, Basel и Base2, посредством синтаксиса инициализатора элементов.  [18]

Множественное наследование указывается двоеточием (:) после имени производного класса и перечислением списка разделенных запятыми базовых классов после двоеточия. Для вызова конструкторов базового класса в конструкторе производного класса используется список инициализаторов элементов.  [19]

При наследовании конструкторы базовых классов вызываются в той последовательности, в которой указано наследование в определении производного класса. На это не влияет последовательность, в которой указаны конструкторы базовых классов в описании конструктора производного класса.  [20]

Конструкторы элементов-объектов вызываются в порядке, в котором элементы объявлены. При наследовании конструкторы базовых классов вызываются в порядке, в котором указано наследование, и перед конструктором производного класса.  [21]

Поскольку производный класс наследует элементы базового класса, то при создании объекта производного класса должен быть вызван конструктор базового класса для задания начальных значений элементам базового класса, содержащимся в объекте производного класса. В конструкторе производного класса при явном вызове конструктора базового класса может быть предусмотрен список инициализаторов элементов; в противном случае конструктор производного класса будет неявно вызывать конструктор базового класса с умолчанием.  [22]

23 Созданный объект класса Dog. [23]

При создании объекта в производном классе, например в классе Dog, сначала вызывается конструктор базового, а затем - производного класса. Схематично объект класса Dog показан на рис. 11.2. Обратите внимание, что объект производного класса состоит как бы из двух частей, одна из которых создается конструктором базового класса, а другая - конструктором производного класса.  [24]



Страницы:      1    2