Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Віртуальні функції». Рисунок 6.1- Робота програмиСодержание книги
Поиск на нашем сайте
Міністерство освіти і науки України Запорізький національний технічний університет
Кафедра програмних засобів
Звіт з лабораторної роботи №6 «Віртуальні функції» Виконав ст. гр. КНТ-423 В.В. Білевський
Прийняв ст. викл. Н. О. Миронова
Запоріжжя, 2014 6.1Мета роботи:Навчитись використовувати віртуальних функцій при проектуванні спадкування в об’єктно-орієнтованих програмах
6.2 Завдання до роботи:Наданий такий клас: class Base { public: virtual void myname() { cout << "This is class Base" << endl; } }; Від цього класу треба створити два похідних класу: DerA і DerB. Від класів DerA і DerB шляхом множинного успадкування створити клас DerAB. Перевизначити у кожному з створених класів функцію myname таким чином, щоб вона виводила на екран дійсне ім’я класу об’єкту, для якого вона викликається. Для кожного з класів створеної ієрархії створити по одному об’єкту і для кожного з них викличте функцію myname. Створіть масив із 4 покажчиків на базовий клас ієрархії. Для кожного з них створіть динамічний об’єкт, по одному для кожного з класів ієрархії. Запишіть виклик функції myname для кожного з динамічних об’єктів за допомогою покажчиків. Поясніть дію функції mymain у всіх випадках. 6.3 Текст програми: #include<iostream> using namespace std;
class base{ public: virtual void myname() { cout << "This is class Base" << endl; } ~base(){cout<<"Destruktor base"<<endl;} }; class DerA: public base{ public: void myname(){cout<<"This is class DerA"<<endl;} ~DerA(){cout<<"destruktor DerA"<<endl;} }; class DerB:public base{ public: void myname(){ cout<<"this is class DerB"<<endl;} ~DerB(){cout<<"destruktor DerB"<<endl;}
};
int main(){ base obj1; base *p; DerA obj2; DerB obj3; p=&obj1; p->myname(); p=&obj2; p->myname(); p=&obj3; p->myname(); return 0; }
6.4 Знімки з єкрану:
|
||
|
Последнее изменение этой страницы: 2024-06-17; просмотров: 43; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.008 с.) |