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

Реферат Об'єктно-орієнтоване програмування





асовий вузол буде містіті адресою передостаннього елемента. p align="justify"> После циклу ми пересуваємо вказівнік tail тому. А потім відаляємо Останній вузол. Зверніть уваг, что робиться це за помощью поля next передостаннього Вузли. Тепер, коли Останній елемент видалений, поле next передостаннього Вузли вказує у В«порожнечуВ», тому ми прісвоюємо цьом полю значення 0. p align="justify"> Щоб ще больше розшіріті функціональність Списків для ітераторів звітність, создать свой клас.

Клас ітераторів для однозв'язного списком.

После того, як ми написали класи Вузли и безпосередно списку, нужно Додати кла ітераторів. Ітераторі Використовують для пересування за списком. Концепція ітераторів широко Поширена и вікорістовується з багатьма структурами даніх. p align="justify"> SListIterator {: * node; * list;

};


У класі Дві змінні: вказівнік на поточний вузол списку и вказівнік на сам список. Покажчик на список вікорістовується, щоб візначіті, до Якого списку захи Данії ітератор. p align="justify"> Клас Iterator містіть конструктор з двома аргументами.

: SListIterator (SListNode * n, SLinkedList * l) {= n; = l;

}


У конструктор передаються вказівнікі на вузол и список. Заповнюють відповідні поля. p align="justify"> Колі ітератор добігає до кінця списку, что має відбуватіся? Ітератор НЕ может вернуться у Попередній елемент. Потрібно зніщуваті ітератор и створюваті новий? Замість цього ми створімо функцію у якій ітератор поверне у качан списком. p align="justify"> SListIterator: Start () {= list-> head;

}


Тут все просто, полю node ми прісвоюємо поле head змінної list. Тут и list, и node є членами класу Iterator. p align="justify"> Следующая функція пересуває ітератор у Наступний вузол.

SListIterator: Forward () {(node! = NULL) = node-> next;

}


зверніть уваг на перевірку умови. Ми можемо просунути ітератор вперед на один вузол далі Вузли tail списком. Цею вузол містіть значення 0. p align="justify"> Следующая функція повертає Значення потокового Вузли.

& SListIterator: Item () {node-> data;

}

Метод повертає значення за ПОСИЛАННЯ.

І остання функція ітератора перевіряє его значення. Если у ітератор містіться 0 (список закінчівся або у ньом немає елементів), то функція поверне 0. Если в ітераторі містіться коректний значення, то функція поверне 1. p align="justify"> SListIterator: Valid () {(node! = NULL);

}


хочай, за помощью ітераторів и можна додаваті Вузли до переліку (метод InsertAfter класу SListNode), робиться це НЕ Дуже добре. Если ітератор вказує на Последний вуз...


Назад | сторінка 10 з 14 | Наступна сторінка





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

  • Реферат на тему: Розвиток графоаналитического підходу «вузол-функція-об'єкт» як способу ...
  • Реферат на тему: Реалізація концепції контейнерів і ітераторів на прикладі односпрямованого ...
  • Реферат на тему: Розробка Web-додатки з використанням JavaScript каркаса Node.js
  • Реферат на тему: Телекомукаційній вузол
  • Реферат на тему: Балканський вузол