Инициализатор - элемент - Большая Энциклопедия Нефти и Газа, статья, страница 3
Русские называют доpогой то место, где собиpаются пpоехать. Законы Мерфи (еще...)

Инициализатор - элемент

Cтраница 3


31 Использование класса Time с константными объектами и константными функциями-элементами ( часть 3 из 3. [31]

Константный объект не может быть изменен с помощью присваивания, так что он должен получить начальное значение. Если данные-элементы класса объявлены как const, то надо использовать инициализатор элементов, чтобы обеспечить конструктор объекта этого класса начальными значением данных-элементов.  [32]

33 Определение класса Point ( часть 1 из 5.| Определения функций-элементов класса Point ( часть 2 из 5. [33]

Конструктор и деструктор оба печатают объект Circle, для которого вызваны. Конструктор Circle, кроме этого, активирует конструктор Point по синтаксису инициализатора элемента и передает значения для а и Ь, инициализируя таким образом элементы данных базового класса.  [34]

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

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

37 Определения функций элементов класса Derived ( часть 4 из 6. [37]

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

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

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

41 Использование класса Time с константными объектами и константными элементами-функциями ( часть 3 из 3. [41]

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

Когда объект входит в область действия, автоматически вызывается его конструктор и нам надо указать, как аргументы передаются конструкторам объектов-элементов. Объекты-элементы создаются в том порядке, в котором они объявлены ( а не в том порядке, в котором они перечислены в списке инициализаторов элементов конструктора), и до того, как будут созданы объекты включающего их класса.  [43]

44 Определение класса Point ( часть 1 из 5.| Определения функций-элементов класса Point ( часть 2 из 5. [44]

Программа на рис. 9.7 демонстрирует последовательность, в которой вызываются конструкторы и деструкторы производного класса. Программа состоит из 5 частей. Части 1 и 2 показывают простой класс Point, содержащий конструктор, деструктор и защищенные данные-элементы х и у. Конструктор и деструктор печатают объект класса Point, для которого они активизированы. Части 3 и 4 показывают простой класс Circle, наследующий Point отрытым наследованием, содержащий конструктор, деструктор и закрытый элемент данных radius. Конструктор и деструктор печатают объект класса Circle, для которого они активизированы. Конструктор Circle активизирует также конструктор класса Point, используя список инициализаторов элементов, и передает значения а и b для задания начальных значений элементов-данных базового класса.  [45]



Страницы:      1    2    3