MaterStudiorum.ru - домашняя страничка студента.
Минимум рекламы - максимум информации.


Авиация и космонавтика
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Банковское дело
Безопасность жизнедеятельности
Биографии
Биология
Биология и химия
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Издательское дело и полиграфия
Инвестиции
Иностранный язык
Информатика
Информатика, программирование
Исторические личности
История
История техники
Кибернетика
Коммуникации и связь
Компьютерные науки
Косметология
Краткое содержание произведений
Криминалистика
Криминология
Криптология
Кулинария
Культура и искусство
Культурология
Литература и русский язык
Литература(зарубежная)
Логика
Логистика
Маркетинг
Математика
Медицина, здоровье
Медицинские науки
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Москвоведение
Музыка
Муниципальное право
Налоги, налогообложение
Наука и техника
Начертательная геометрия
Новейшая история, политология
Оккультизм и уфология
Остальные рефераты
Педагогика
Полиграфия
Политология
Право
Право, юриспруденция
Предпринимательство
Промышленность, производство
Психология
Психология, педагогика
Радиоэлектроника
Разное
Реклама
Религия и мифология
Риторика
Сексология
Социология
Статистика
Страхование
Строительные науки
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Управленческие науки
Физика
Физкультура и спорт
Философия
Финансовые науки
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
Экология
Экономика
Экономико-математическое моделирование
Экономическая география
Экономическая теория
Эргономика
Этика
Юриспруденция
Языковедение
Языкознание, филология
    Начало -> Информатика, программирование -> Производные Классы

Название:Производные Классы
Просмотров:67
Раздел:Информатика, программирование
Ссылка:none(0 KB)
Описание:Построение Производного Класса . Функции Члены. Видимость. Указатели. Иерархия Типов. Конструкторы и Деструкторы. Поля Типа. Виртуальные Функции.

Университетская электронная библиотека.
www.infoliolib.info

Часть полного текста документа:

Производные Классы
    Чтобы разделить задачи понимания аппарата языка и методов его применения, знакомство с понятием производных классов делается в три этапа. Вначале с помощью небольших примеров, которые не надо воспринимать как реалистичные, будут описаны сами средства языка (запись и семантика). После этого демонстрируются некоторые неочевидные применения производных классов, и, наконец, приводится законченная программа. Построение Производного Класса
    Рассмотрим построение программы, которая имеет дело с людьми, служащими в некоторой фирме. Структура данных в этой программе может быть например такой:
    struct employee { // служащий
    char* name; // имя
    short age; // возраст
    short department; // подразделение
    int salary; //
    employee* next;
    // ...
    };
    Список аналогичных служащих будет связываться через поле next. Теперь давайте определим менеджера:
    struct manager { // менеджер
    employee emp; // запись о менеджере как о служащем
    employee* group; // подчиненные люди
    // ...
    };
    Менеджер также является служащим; относящиеся к служащему employee данные хранятся в члене emp объекта manager. Для читающего это человека это, может быть, очевидно, но нет ничего выделяющего член emp для компилятора. Указатель на менеджера (manager*) не является указателем на служащего (employee*), поэтому просто использовать один там, где требуется другой, нельзя. В частности, нельзя поместить менеджера в список служащих, не написав для этого специальную программу. Можно либо применить к manager* явное преобразование типа, либо поместить в список служащих адрес члена emp, но и то и другое мало элегантно и довольно неясно. Корректный подход состоит в том, чтобы установить, что менеджер является служащим с некоторой добавочной информацией:
    struct manager : employee {
    employee* group;
    // ...
    };
    manager является производным от employee и, обратно, employee есть базовый класс для manager. Класс manager дополнительно к члену group имеет члены класса employee (name, age и т.д.).
    Имея определения employee и manager мы можем теперь создать список служащих, некоторые из которых являются менеджерами.
    Например:
    void f()
    {
    manager m1, m2;
    employee e1, e2;
    employee* elist;
    elist = &m1; // поместить m1, e1, m2 и e2 в elist
    m1.next = &e1;
    e1.next = &m2;
    m2.next = &e2;
    e2.next = 0;
    }
    Поскольку менеджер является служащим, manager* может использоваться как employee*. Однако служащий необязательно является менеджером, поэтому использовать employee* как manager* нельзя. Функции Члены
    Просто структуры данных вроде employee и manager на самом деле не столь интересны и часто не особенно полезны, поэтому рассмотрим, как добавить к ним функции.
    Например:
    class employee {
    char* name;
    // ...
    public:
    employee* next;
    void print();
    // ...
    };
    class manager : public employee {
    // ...
    public:
    void print();
    // ...
    };
    Надо ответить на некоторые вопросы. ............






Похожие работы:

Название:Nonverbal communication in the context of managerial communication
Просмотров:256
Описание: London school of business and law Master foundation programme Managerial communication Nonverbal communication in the context of managerial communication Student name: Tamara Sargsyan Tutor name: Tatiana Pavlovsky June 2010 Table of Contents Introduction 1. Communicati

Название:Системы класса Content Manager System
Просмотров:196
Описание: Содержание Введение Глава 1. Система управления сайтом Content Manager System. 1.1 Понятие CMS. 1.2 Типы CMS 1.3 Критерии выбора CMS Глава 2. Платные и бесплатные системы управления сайтом. 2.1 Виды и характеристики бесплатны

Название:Система управления сетями Transcend Manager v.5.0 фирмы 3Com
Просмотров:124
Описание: Лабораторная работа по дисциплине: «Технические средства сетей ЭВМ»   на тему: «Система управления сетями Transcend Manager v. 5.0 фирмы 3Com»Москва 2009 Введение Transcend Manager состоит из двух частей: Transcend WorkGroup

Название:Significance of translation in contemporary life
Просмотров:355
Описание: Poltava Korolenko National Pedagogical University The department of English philology Report “Significance of translation in contemporary life” (Theory and practice of translation) Work by the second year student Chevnova Yana FD-25 The professor: Lapochka V.O. Poltava, 2010

Название:Основні функції операційних систем. Вбудований редактор FAR Manager
Просмотров:123
Описание: МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ Бердичівський політехнічний коледж Контрольна робота з предмету «Операційні системи»м. Бердичів 2008 р. 1. Основні функції операційних систем

 
     

Вечно с вами © MaterStudiorum.ru