|
|||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
ДОСТУП ДО ЗВИЧАЙНИХ МЕТОДІВ ЧЕРЕЗ ВКАЗІВНИК___________________________________
Лістинг 21.1. Програма NotVirt //notvirt.cpp //Доступ до звичайних функцій через вказівники #include <iostream> using namespace std; ///////////////////////////////////////////// Class Base //Базовий клас { Public: Void show () //звичайна функція { cout << “ Base \n”; } }; ///////////////////////////////////////// Class Derv1: public Base //похідний клас 1 { Public: Void show () //звичайна функція { cout << “ Derv1 \n”; } }; ///////////////////////////////////////// Class Derv2: public Base //похідний клас 2 { Public: Void show () //звичайна функція { cout << “ Derv2 \n”; } }; /////////////////////////////////////////// Int main() { Derv1 dv1; //об’єкт похдіного класу 1 Derv2 dv2; //об’єкт похдіного класу 2 Base* ptr; //вказівник на базовий клас ptr = &dv1; // адрес dv1 занести у вказівник ptr -> show() //виконати show() ptr = &dv2; // адрес dv2 занести у вказівник ptr -> show() //виконати show() return 0; }
Мал. 21.1. Доступ через вказівник без використання віртуальних функцій. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.006 сек.) |