Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // main.cpp
- #include "Figura.h"
- #include "Kolo.h"
- #include "Kwadrat.h"
- #include "Trojkat.h"
- int main()
- {
- Figura* Ko = new Kolo; // deklaracja wskaźnika na obiekt klasy Figura o nazwie Ko i dynamiczne zaalokowanie do niego obiektu klasy Kolo
- Figura* Kw = new Kwadrat;
- Figura* Tr = new Trojkat;
- Ko->rysuj(); // wywołanie metody wirtualnej rysuj() dla obiektu przypisanego do wskaźnika Ko
- Kw->rysuj();
- Tr->rysuj();
- delete Ko; // zwolnienie zaalokowanej pamięci ze wskaźnika Ko
- delete Kw;
- delete Tr;
- return 0; // wyjście z programu ze zwróceniem wartości zerowej (brak błędu)
- }
- // -------------------------------------------------
- // Figura.h
- #pragma once
- class Figura
- {
- public:
- virtual void rysuj() const = 0;
- };
- // -------------------------------------------------
- // Kolo.h
- #pragma once
- #include "Figura.h"
- class Kolo :
- public Figura
- {
- virtual void rysuj() const;
- };
- // -------------------------------------------------
- // Kolo.cpp
- #include <iostream>
- #include "Kolo.h"
- using namespace std;
- void Kolo::rysuj() const // nagłówek metody wirtualnej rysuj() typu void (konkretyzacja tej metody dla klasy Kolo
- {
- cout << "To jest kolo: ( )" << endl; // wypisanie na ekran komunikatu i przejście do kolejnego wiersza
- }
- // -------------------------------------------------
- // Kwadrat.h
- #pragma once
- #include "Figura.h"
- class Kwadrat :
- public Figura
- {
- virtual void rysuj() const;
- };
- // -------------------------------------------------
- // Kwadrat.cpp
- #include <iostream>
- #include "Kwadrat.h"
- using namespace std;
- void Kwadrat::rysuj() const
- {
- cout << "To jest kwadrat: [ ]" << endl;
- }
- // -------------------------------------------------
- // Trojkat.h
- #pragma once
- #include "Figura.h"
- class Trojkat :
- public Figura
- {
- virtual void rysuj() const;
- };
- // -------------------------------------------------
- // Trojkat.cpp
- #include <iostream>
- #include "Trojkat.h"
- using namespace std;
- void Trojkat::rysuj() const
- {
- cout << "To jest trojkat: /_\\ " << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement