Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Class manager

Читайте также:
  1. CHAPTER IV GRAMMATICAL CLASSES OF WORDS
  2. ChildViewManager
  3. class laborer
  4. Funktionen und Aufgaben eines Managers
  5. Royal brides: a class act?
  6. Russian Classification of Economic Activities

Включення: класи в класах.

Приклад 12.

У цій програмі застосуємо включення замість наслідування.

 
 

Тоді класи manager і scientist міститимуть копії класів employee і student як атрибути. Діаграма класів UML:

Опишемо взаємозв'язки між класамі іншим способом:

class student

{ };

 

class employee

{ };

 

class manager

{

student stu;

employee emp;

};

 

class scientist

{

student stu;

employee emp;

};

 

class laborer

{

employee emp;

};


#include <iostream>

#include <string>

using namespace std;

Class student

{

private:

string school;

string degree;

public:

void getedu ()

{

cout << " Введите название учебного заведения: ";

cin >> school;

cout << " Введите уровень образования\n";

cout << " (неполное высшее, бакалавр, магистр, кандидат наук): ";

cin >> degree;

}

void putedu () const

{

cout << "\n Учебное заведение: " << school;

cout << "\n Степень: " << degree;

}

};

 

Class employee

{

private:

string name;

unsigned long number;

public:

void getdata ()

{

cout << "\n Введите фамилию: "; cin >> name;

cout << " Введите номер: "; cin >> number;

}

void putdata () const

{

cout << "\n Фамилия: " << name;

cout << "\n Номер: " << number;

}

};

class manager

{

private:

string title;

double dues;

employee emp;

student stu;

public:

void getdata ()

{

emp.getdata ();

cout << " Введите должность: "; cin >> title;

cout << " Введите сумму взносов в гольф-клуб: "; cin >> dues;

stu.getedu ();

}

void putdata () const

{

emp.putdata ();

cout << "\n Должность: " << title;

cout << "\n Сумма взносов в гольф-клуб: " << dues;

stu.putedu ();

}

};

 


Дата добавления: 2015-08-13; просмотров: 51 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
ОБ АУДИТОРСКОЙ ДЕЯТЕЛЬНОСТИ| class laborer

mybiblioteka.su - 2015-2024 год. (0.006 сек.)