Interfejs Opisz

Interfejs Opisz:

class Opisz {

virtual void opisz()=0;

};

Interfejs jest szczególnym przypadkiem klasy abstrakcyjnej. Mianowicie jest to klasa abstrakcyjna, która nie zawiera pól, a metody są jedynie czysto wirtualne. Nasz interfejs Opisz pozwala rozszerzyć klasę, która z niego korzysta o możliwość wyświetlenia informacji o sobie. Przykładowo zainplementowany w klasie Uzytkownik pozwoli wyświelić dane o konkretnym użytkowniku (imię, nazwisko, tytuł wypożyczonego filmu). Natmomiast użyty w klasie Wypożyczalnia wyświetlni nazwę wypożyczalni i dane o niej. Jak widać interfejs ma służyć rozszerzeniu klasy o pewną funkcjonalność.

class Uzytkownik : Opisz {

std::string imie, nazwisko;

int rachunek;

int nr_karty;

public:

Film *wypozyczony;

Uzytkownik(std::string imie, std::string naz, int rach, int nr);

int zwroc_nr();

void opisz();

};

Klasa Użytkownik reprezentuje klienta naszej wypożyczalni. Dla uproszczenia przyjęliśmy, że jeden użytkownik może wypożyczyć tylko jeden film (choć łatwo byłoby to rozbudować np. tak aby wskaźnik *wypożyczony wskazywał na tablicę). Jak widać Uzytkownik dziedziczy po Opisz co jest równoznaczne z zastosowaniem interfejsu w tej klasie. Znajduje się tam również konstruktor parametryczny oraz 2 metody. *wypożyczony celowo został umieszczony w sekcji publicznej, aby móc go modyfikować i odczytywać z poziomu innych klas.


Wyszukiwarka

Podobne podstrony:
7000DELUXE INTERFUNK
Interfejsy
5 interferometria id 40157 Nieznany (2)
Instrukcja obsługi interfejs KKL OPEL, BMW, VAG
Do czego przydaje się interferencja
4 Ansys Interface
Fizyka 25a, Labolatoria fizyka-sprawozdania, !!!LABORKI - sprawozdania, 25 - Interferencja fal akust
Jednomodowe czujniki interferencyjne, Studia, sprawozdania, sprawozdania od cewki 2, Dok 2, Dok 2, P
Opisz budowę i zasadę działania zwalniacza w autobusie na0 i?R
instrukcja instalacji i obsługi interfejsu
Instrukcja interfejs Renault USB
elm327 interface viecar obd2 bluetooth scanner user manual
Comarch ERP XL 2013 1 Typ interfejsu
AC31 07KP53 fast Modbus interface EN
Interfejs programowy Gniazda BSD

więcej podobnych podstron