Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Зв'язний список футболістів

Реферат Зв'язний список футболістів





2.1 Дерево об'єктів


Одним із завдань курсового проектування було створення так званого дерева об'єктів. Автор курсового проектування запропонував модель, представлену на малюнку 18. Слід зазначити, що головним класом (класом батьком) є верхній клас, а інші класи (класи нащадки) успадковують всі методи і дані класів предків публічним способом успадкування. При цьому спадкування йде зверху вниз (вказано за допомогою стрілок на малюнку).


Малюнок 18.


Клас-батько rf, який описаний в однойменному файлі rf. h, містить основні поля даних запису, що відповідає кожному футболістові:

private:

Club;// футбольний клуб

string Number;// ігровий номер

string Age;// вік

string Name;// ім'я футболіста


При оголошенні дані використовувалося ключове слово private raquo ;. Це означає, що дані класу country закриті і отримати доступ до них можна тільки за допомогою спеціальних методів, описаних нижче (як приклад наводиться метод доступу до змінної Name, що містить назву ім'я футболіста).


//ім'я футболіста

inline string GetName () {return Name; } void SetName (string amp; s) {Name=s; }


Метод inline lt; тип значення gt; Get ... () повертає відповідне поле даних, а метод - inlinevoidSet ... ( lt; тип зберігається значення gt; amp; s) заповнює відповідне поле даних. В даному випадку в цьому полягає принцип інкапсуляції, одного з властивостей об'єктно-орієнтованого програмування.

Крім методів, представлених вище, клас countryсодержіт також ряд таких методів:


//обробка даних

virtualvoidDownloading (istream amp;);// зчитування з файлу

virtual void Printing ();// вивід на екран void SetingNewData ();// заповнення з клавіатури

virtual void Uploading (ostream amp;);// завантаження у файл

//дії

virtual void Whatzadacha () {};// головне завдання void Whatvtorzadacha () {};// вторинна завдання () {};// робоча нога


Всі методи, що служать для обробки даних - віртуальні (визначаються ключовим словом virtual ), вони можуть бути використані для обробки інформації, що міститься в об'єкті певного класу.

Те ж саме стосується і методів, що описують якісь дії, чинені об'єктами. Приміром, для Центрального нападаючого і флангового нападаючого актуальним є дія, що описує їх завдання, але завдання цих футболістів виглядає по-різному, тобто метод описує дію на поле один і той же, але результат його виконання різний для об'єктів різних класів (у нашому випадку ці об'єкти - Центральний нападник і Фланговий нападник). У цьому полягає сенс поліморфізму в парадигмі об'єктно-орієнтованого програмування.

Також в класі countryреалізована така можливість мови C ++ як перевантаження оператора. Був перевантажений оператор == з метою заміни дії (strstr (getTypeName (), str_1)!=NULL).


2.2 Робота зі списком


Ще одним завданням курсового проектування було створення контейнера типу список і ряду функцій для його обробки. Прототипи цих функцій описані у файлі functions_in_list. h, а їх реалізація у файлі functions_in_list. cpp. Простір імен stdmyspisok містить наступні функції обробки списку:


//включення нового елементу в перелік з клавіатури

void IncludeElement (list lt; Rf * gt; amp ;, Rf *);

//включення нового елементу в перелік з файлу

void IncludeElementFromFile (list lt; Rf * gt; amp ;, Rf *, char *);

//пошук елемента

Void SearchingElement (list lt; Rf * gt; amp ;, Rf *, string amp ;, const char *);// друк всього списку (list lt; Rf * gt; amp;);

//друк конкретного елемента зі списку

voidPrintElementFromList (list lt; Rf * gt; amp ;, int amp;);

//друк певної категорії списку

void PrintCategoryFromList (list lt; Rf * gt; amp ;, const char *);

//в...


Назад | сторінка 3 з 5 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Прикладне додаток &Розробка проекту для створення нового класу Auto і елеме ...
  • Реферат на тему: This is a list of problems facing society today
  • Реферат на тему: Реалізація різних методів доступу до даних в таблицях на ім'я
  • Реферат на тему: Використання принципів об'єктно-орієнтованого програмування на прикладі ...
  • Реферат на тему: Розробка системи програмування для обробки даних строкового типу