Programowanie obiektowe w C++ Wykªad 1
|
|
- Łucja Kowal
- 8 lat temu
- Przeglądów:
Transkrypt
1 Programowanie obiektowe w C++ Wykªad 1 dr Lidia St pie«akademia im. Jana Dªugosza w Cz stochowie L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 1 / 37
2 Zagadnienia: Klasy, obiekty Dziedziczenie Polimorzm Przeci»anie operatorów Operatory rzutowania Obªuga wyj tków Szablony STL - standardowa biblioteka szablonów Obsªuga wej±cia, wyj±cia oraz plików L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 2 / 37
3 Literatura Prata Stephen, Szkoªa programowania. J zyk C++. Wydawnictwo Helion, Gliwice Bjarne Stroustrup. J zyk C++. Kompendium wiedzy. Wydawnictwo Helion, Gliwice Siddhartha Rao. C++. Dla ka»dego. Wydanie VII. Wydawnictwo Helion, Gliwice Alex Allain. C++. Przewodnik dla pocz tkuj cych. Wydawnictwo Helion, Gliwice L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 3 / 37
4 Programowanie proceduralne Problem dzielony jest na mniejsze fragmenty, zwane moduªami. Programista decyduje jakie chce mie funkcje(procedury). Wybiera najlepsze algorytmy. Projektuje struktury do przechowywania danych. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 4 / 37
5 Programowanie obiektowe Zdecyduj, jakie chcesz mie klasy; dla ka»dej klasy dostarcz peªny zbiór operacji; korzystaj c z mechanizmu dziedziczenia jawnie wska», co jest wspólne. Cechy j zyka programowania obiektowego: abstrakcyjne typy danych (klasy) hermetyzacja danych (ukrywanie) dziedziczenie polimorzm L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 5 / 37
6 Hermetyzacja (ang. encapsulation) Kapsuªkowanie, enkapsulacja - ograniczenie dost pno±ci danych i funkcji wewn trznych klas i obiektów, udost pnianie ich jedynie za pomoc specjalnych funkcji nazywanych metodami. Polimorzm Wielopostaciowo± - mo»liwo± istnienia wielu metod o tej samej nazwie, powi zana z mo»liwo±ci wyboru konkretnej metody podczas wykonywania. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 6 / 37
7 Dziedziczenie Jedna klasa obiektów mo»e by zdeniowana jako szczególny przypadek innej ogólniejszej klasy, a denicje metod i pól danych klasy ogólniejszej umieszczane s automatycznie w klasie szczególnej. Klasa ogólna nazywana jest klas bazow a klasa szczególna klas pochodn. Klasy pochodne mog deniowa swoje wªasne metody i pola danych, które mog przesªania dziedziczone metody i pola danych. Klasa mo»e dziedziczy wªa±ciwo±ci wi cej ni» jednej klasy - dziedziczenie wielorakie. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 7 / 37
8 Programowanie zorientowane obiektowo Klasy Denicja klasy tworzy nowy typ danych. Klasy s opisami obiektów. Obiekty mog przechowywa dane oraz wykonywa okre±lone przez programist zadania. Szkielet denicji klasy: class NazwaKlasy { // tre± klasy }; Na tre± klasy skªadaj si deniowane pola i metody. Pola sªu» do przechowywania danych. Metody sªu» do wykonywania ró»nych operacji na danych. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 8 / 37
9 Obiekty w C++ Obiekt: abstrakcyjny byt reprezentuj cy lub opisuj cy pewn rzecz lub poj cie obserwowane w ±wiecie rzeczywistym. Obiekt przechowuje pewne informacje na swój temat (atrybuty). Obiekt charakteryzuje si pewnym zakresem zachowa«. Mo»na poprosi obiekt o wykonanie pewnej operacji na samym sobie. Przykªady: Klasa zmienna; Klasa* wskaznik; wskaznik = new Klasa(argumenty); Klasa* wskaznik = new Klasa(argumenty); L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 9 / 37
10 Pola klas Pola s skªadowymi klasy, deniowanymi w jej wn trzu (inaczej w ciele klasy). Po utworzeniu zmiennej typu klasowego (obiektu), do jej pól nale»y odwoªywa si za pomoc operatora wyboru skªadowej oznaczanego znakiem kropki '.'. zmienna.pole Po utworzeniu obiektu przy pomocy operatora new, do pól obiektu nale»y odwoªywa si za pomoc operatora wyboru skªadowej, oznaczanego symbolem '->'. wskaznik->pole L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 10 / 37
11 Metody klas Metody: Operacje wykonywane na obiektach. S wykonywane na skutek wysªania do obiektu komunikatu, który wywoªuje okre±lon metod (operacj ). Metody nosz równie» nazw funkcji skªadowych. Metody deniowane s w ciele klasy. Ka»da metoda mo»e przyjmowa argumenty oraz zwraca wynik. Argumenty metody to dane, które mo»na jej przekaza. Metoda mo»e mie dowoln liczb argumentów (w szczególno±ci 0) umieszczonych w nawiasie okr gªym za jej nazw, oddzielonych przecinkami. Metoda, która nie ma argumentów, ma puste nawiasy okr gªe. Metoda mo»e zwraca wynik przez zastosowanie instrukcji return. Je»eli metoda nic nie zwraca, jako zwracany typ nale»y zastosowa sªowo void. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 11 / 37
12 Odwoªanie do metod klasy Po utworzeniu obiektu do jego metod nale»y odwoªywa si : za pomoc operatora wyboru skªadowej kropiki '.': Klasa zmienna; zmienna.metoda(argumenty); za pomoc operatora wyboru skªadowej oznaczonego symbolem '->', o ile obiekt zostaª utworzony przy u»yciu operatora new: Klasa* wskaznik = new Klasa(argumenty); wskaznik->metoda(argumenty); L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 12 / 37
13 Modykatory dost pu W j zyku C++ dost p do skªadowych klasy jest okre±lany za pomoc sªów kluczowych (modykatorów dostepu): private: skªadowe nie s dost pne dla klienta klasy (aplikacji korzystaj cej z klasy), dost p do tych skªadowych maj tylko metody klasy, public: skªadowe s dost pne dla klienta klasy, nie ma ogranicze«dost pu, protected: wykorzystywane podczas dziedziczenia, dost p do nich maj metody klasy lub metody klas potomnych. Uwaga Domy±lnie, je»eli przed pierwsz skªadow klasy nie wyst puje»adne okreslenie, dost p jest prywatny, co oznacza,»e dost p do tej skªadowej maj tylko metody deniowanej klasy. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 13 / 37
14 Przykªad 1 - denicja klasy class Baton { public: //metody void setnazwa(string nazwabatonu) { nazwa = nazwabatonu; } void setilosc(int iloscbatonu) { ilosc = iloscbatonu; } void setcena(float cenabatonu) { cena = cenabatonu; } void wypisz() { cout << nazwa << ", " << ilosc << " szt., "; cout << cena << "zl" << endl; } private://pola string nazwa; int ilosc; float cena; }; L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 14 / 37
15 Przykªad 1 - obiekty klasy int main() { Baton baton1; baton1.setnazwa("mars"); baton1.setilosc(14); baton1.setcena(3.15); baton1.wypisz(); Baton baton2; } baton2.setnazwa("prince Polo"); baton2.setilosc(100); baton2.setcena(1.95); baton2.wypisz(); L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 15 / 37
16 Przykªad 2 - deklaracja metod w denicji klasy class Baton { public: //metody void setnazwa(string nazwabatonu); void setilosc(int iloscbatonu); void setcena(float cenabatonu); void wypisz(); private://pola string nazwa; int ilosc; float cena; }; L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 16 / 37
17 Przykªad 2 - denicja metod klasy Baton void Baton::setNazwa(string nazwabatonu) { nazwa = nazwabatonu; } void Baton::setIlosc(int iloscbatonu) { ilosc = iloscbatonu; } void Baton::setCena(float cenabatonu) { cena = cenabatonu; } void Baton::wypisz() { cout << nazwa << ", " << ilosc << " szt., "; cout << cena << "zl" << endl; } L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 17 / 37
18 Przykªad 3 - inicjalizacja pól w ciele klasy tylko w C++11 class Baton { public: //metody void setnazwa(const string& nazwabatonu); void setilosc(int iloscbatonu); void setcena(float cenabatonu); void wypisz(); private://pola string nazwa = ""; int ilosc = 0; float cena = 0.00; }; int main(){ Baton baton1; baton1.wypisz(); } L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 18 / 37
19 Przykªad 4 - Baton.h #ifndef BATON_H #define BATON_H #include <string> using namespace std; class Baton { public: //metody void setnazwa(const string& nazwabatonu); void setilosc(int iloscbatonu); void setcena(float cenabatonu); void wypisz(); private://pola string nazwa; int ilosc; float cena; }; #endif L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 19 / 37
20 Przykªad 4 - Baton.cpp #include <iostream> #include "Baton.h" void Baton::setNazwa(string nazwabatonu) { nazwa = nazwabatonu; } void Baton::setIlosc(int iloscbatonu) { ilosc = iloscbatonu; } void Baton::setCena(float cenabatonu) { cena = cenabatonu; } void Baton::wypisz() { cout << nazwa << ", " << ilosc << " szt., "; cout << cena << "zl" << endl; } L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 20 / 37
21 Przykªad 4 - main.cpp #include <iostream> #include <string> #include "Baton.h" using namespace std; int main() { Baton baton1; } baton1.setnazwa("mars"); baton1.setilosc(14); baton1.setcena(3.15); baton1.wypisz(); L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 21 / 37
22 Konstruktor klasy Konstruktor gwarantuje poprawn inicjalizacj obiektu. Jest on automatycznie wywoªywany przez kompilator, w miejscu, w którym tworzony jest obiekt, zanim jeszcze klient klasy b dzie mógª podj jakiekolwiek dziaªania zwi zane z obiektem. Konstruktor mo»e posiada argumenty okre±laj ce sposób tworzenia obiektu. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 22 / 37
23 Konstruktory klas Konstruktor to specjalna metoda, która jest wywoªywana podczas tworzenia obiektu. Musi mie nazw zgodn z nazw klasy. Konstruktor nigdy nie zwraca»adnego wyniku, ale nie wyst puje przed nim sªowo void. Konstruktor mo»e by bezargumentowy, jak te» mo»e przyjmowa argumenty, które zostan wykorzystane, bezpo±rednio lub po±rednio, np. do zainicjalizowania pól obiektu. Ka»da klasa mo»e mie kilka konstruktorów, ró»ni cych si przyjmowanymi argumentami - przeci»anie konstruktora. Je±li w klasie wyst puje tylko jeden konstruktor i przyjmuje on argumenty, to przy tworzeniu obiektu nale»y je poda. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 23 / 37
24 Konstruktory klasy Je±li nie zdeniuje si»adnego wªasnego konstruktora inicjuj cego, to kompilator automatycznie stworzy wªasny domy±lny (czyli bez parametrów) konstruktor inicjuj cy. Konstruktor domy±lny stworzony przez kompilator nie przypisuje warto±ci pocz tkowych skªadowym klasy. Konstruktor domy±lny to konstruktor, który mo»e zosta wywoªany bez podawania argumentów. Zdeniowanie cho jednego wªasnego konstruktora spowoduje,»e kompilator przyjmie,»e klasa ma wªasne konstruktory i nie utworzy swojego konstruktora domy±lnego. Je±li potrzebny jest konstruktor bez parametrów, trzeba go samemu utworzy. W ciele konstruktora (tak jak w ka»dej innej metodzie) mo»na wywoªywa inne metody. Podobnie jak w funkcjach i metodach, tak»e w konstruktorach mo»na zadeklarowa warto±ci domy±lne argumentów. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 24 / 37
25 Przykªad 5 - Baton.h #ifndef BATON_H #define BATON_H #include <string> using namespace std; class Baton { public: //metody Baton(const string& nazwabatonu); void setnazwa(const string& nazwabatonu); void setilosc(int iloscbatonu); void setcena(float cenabatonu); void wypisz(); private://pola string nazwa; int ilosc = 0; float cena = 0; }; #endif L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 25 / 37
26 Przykªad 5 - Baton.cpp #include <iostream> #include "Baton.h" Baton::Baton(const string& nazwabatonu) { nazwa = nazwabatonu; }... L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 26 / 37
27 Przykªad 5 - main.cpp #include <iostream> #include <string> #include "Baton.h" using namespace std; int main() { Baton baton1("mars"); baton1.setilosc(14); baton1.setcena(3.15); baton1.wypisz(); Baton baton2 = Baton("Mars1"); baton2.setilosc(4); baton2.setcena(2.15); baton2.wypisz(); Baton* baton3 = new Baton("Mars2"); baton3->wypisz(); } L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 27 / 37
28 this Wywoªana funkcja skªadowa klasy (metoda) otrzymuje niejawnie adres obiektu, na rzecz którego zostaªa wywoªana. Adres ten jest przechowywany w zmiennej wska¹nikowej o nazwie this. (Który obiekt? Ten (this) obiekt.) Odwoªanie do pól i metod obiektu do którego this si odwoªuje, odbywa si za pomoc operatora wyboru skªadowej oznaczanego symbolem '->'. Umo»liwia to m.in. stosowanie w metodach i konstruktorach argumentów o nazwach identycznych z nazwami pól klasy. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 28 / 37
29 Przykªad 5 - Baton.h #ifndef BATON_H #define BATON_H #include <string> using namespace std; class Baton { public: //metody Baton(const string& nazwa=""); Baton(const string& nazwa, int ilosc, float cena);... private://pola string nazwa; int ilosc = 0; float cena = 0; }; #endif L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 29 / 37
30 Przykªad 5 - Baton.cpp #include <iostream> #include "Baton.h" Baton::Baton(const string& nazwa) { this->nazwa = nazwa; } Baton::Baton(const string& nazwa, int ilosc, float cena) { this->nazwa = nazwa; this->ilosc = ilosc; this->cena = cena; }... L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 30 / 37
31 Metody staªe Metody, które nie zmieniaj warto±ci pól obiektu mog, a wr cz powinny by deklarowane jako const. class Baton { public: //metody... void wypisz() const;... }; void Baton::wypisz() const { cout << nazwa << ", " << ilosc << " szt., "; cout << cena << "zl" << endl; } L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 31 / 37
32 Zalecanym sposobem inicjalizacji pól obiektu jest zastosowanie listy inicjalizacyjnej. Lista inicjalizacyjna zaczyna si dwukropkiem umieszczonym za nawiasami zawieraj cymi argumenty. Po dwukropku wyst puje lista argumentów oddzielonych przecinkami, a po ka»dym argumencie podaje si w nawiasach warto±ci pocz tkowe argumentów. class Baton { public:... Baton(const string& nazwa, int ilosc = 0, float cena = 0.0);... }; Baton::Baton(const string& nazwa, int ilosc, float cena) :nazwa(nazwa),ilosc(ilosc),cena(cena){} L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 32 / 37
33 Destruktory klas Destruktor jest to specjalna metoda automatycznie wywoªywana podczas usuwania obiektu danej klasy, co ma miejsce, gdy: ko«czy si zasi g deklaracji obiektu, usuwany jest obiekt tymczasowy (patrz wykªad 3), do wska¹nika obiektu zastosowano operator delete. Celem destruktora jest zako«czenie istnienia obiektu danej klasy w sposób przewidywalny i uporz dkowany. Je±li nie zdeniuje si wªasnego destruktora, to kompilator automatycznie stworzy wªasny domy±lny destruktor. Destruktor deniowany przez u»ytkownika ma tak sam nazw jak klasa poprzedzon znakiem tyldy ( ), jest funkcj bez okre±lonego typu wyniku. Do destruktora nie przekazujemy»adnych argumentów. W klasie mo»na zdeniowa tylko jeden destruktor. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 33 / 37
34 Przykªad 6 - Destruktor class Baton { public: Baton(const string& nazwa, int ilosc = 0, float cena = 0.0); ~Baton();... }; Baton::~Baton() { } cout << "Destruktor" << endl; L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 34 / 37
35 Skªadowe statyczne Zwykªe pola danych zawieraj warto±ci charakterystyczne dla danego obiektu i s tworzone jedno na obiekt. Chc c odwoªa si do zwykªego pola danych, trzeba wskaza obiekt, do którego ono nale»y. Statyczne pole danych klasy to takie pole danych, które istnieje niezale»nie od liczby utworzonych obiektów tej klasy, jest tworzone jedno na klas. Mo»e by zatem wykorzystywane do wspóªdzielenia informacji mi dzy wszystkimi obiektami klasy. Deklaracja statycznego pola danych ma posta : class Baton { };... static int ilenas;... L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 35 / 37
36 Statyczne skªadowe Inicjalizacja statycznego pola danych jest umieszczana poza klas : int Baton::ileNas=0; Do statycznego pola danych mo»na odwoªywa si bezpo±rednio, wskazuj c tylko klas : cout << Baton::ileNas; Metoda, która korzysta tylko ze skªadowych statycznych (czyli nie zale»y od»adnego obiektu) mo»e by zadeklarowana jako funkcja statyczna. Funkcja statyczna charakteryzuje si nast puj cymi wªa±ciwo±ciami: nie jest zwi zana z obiektem, nie ma zatem wska¹nika this, mo»e by wywoªywana samodzielnie, bez odwoªania si do obiektu. L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 36 / 37
37 Przykªad 7 class Baton { public: Baton(const string& nazwa):nazwa(nazwa){++ilenas;} ~Baton(){--ileNas;}... static int PokazIleNas();... private:... static int ilenas; }; int Baton::ileNas = 0; int Baton::PokazIleNas(){return ilenas;} L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 37 / 37
Programowanie obiektowe w C++ Wykªad 4
Programowanie obiektowe w C++ Wykªad 4 dr Lidia St pie«akademia im. Jana Dªugosza w Cz stochowie L. St pie«(ajd) Programowanie obiektowe w C++ 1 / 26 Dziedziczenie - podstawy Denicja klasy dziedzicz cej
1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy.
1 Klasy. Klasa to inaczej mówi c typ który podobnie jak struktura skªada si z ró»nych typów danych. Tworz c klas programista tworzy nowy typ danych, który mo»e by modelem rzeczywistego obiektu. 1.1 Denicja
PROGRAMOWANIE OBIEKTOWE W C++ - cz 1. Definicja klasy, składniki klasy, prawa dost pu, definiowanie funkcji składowych, konstruktory i destruktory.
PROGRAMOWANIE OBIEKTOWE W C++ - cz 1 Definicja klasy, składniki klasy, prawa dost pu, definiowanie funkcji składowych, konstruktory i destruktory. Program komputerowy opisuje w pewien sposób rzeczywisto.
Listy i operacje pytania
Listy i operacje pytania Iwona Polak iwona.polak@us.edu.pl Uniwersytet l ski Instytut Informatyki pa¹dziernika 07 Który atrybut NIE wyst puje jako atrybut elementów listy? klucz elementu (key) wska¹nik
Wykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Składnia C++ Programowanie Obiektowe Mateusz Cicheński
Składnia C++ Programowanie Obiektowe Mateusz Cicheński Klasy i modyfikatory dostępu Przesłanianie metod Polimorfizm Wskaźniki Metody wirtualne Metody abstrakcyjne i interfejsy Konstruktory i destruktory
Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;
Klasy w C++ są bardzo ważnym narzędziem w rękach programisty. Klasy są fundamentem programowania obiektowego. Z pomocą klas będziesz mógł tworzyć lepszy kod, a co najważniejsze będzie on bardzo dobrze
Programowanie obiektowe, wykład nr 6. Klasy i obiekty
Dr hab. inż. Lucyna Leniowska, prof. UR, Zakład Mechatroniki, Automatyki i Optoelektroniki, IT Programowanie obiektowe, wykład nr 6 Klasy i obiekty W programowaniu strukturalnym rozwój oprogramowania oparto
Wykład 5: Klasy cz. 3
Programowanie obiektowe Wykład 5: cz. 3 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD - podstawy Konstruktor i destruktor (część I) 2 Konstruktor i destruktor KONSTRUKTOR Dla przykładu
1. Wprowadzenie do C/C++
Podstawy Programowania :: Roman Grundkiewicz :: 014 Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub
Wstęp do programowania obiektowego. WYKŁAD 3 Dziedziczenie Pola i funkcje statyczne Funkcje zaprzyjaźnione, this
Wstęp do programowania obiektowego WYKŁAD 3 Dziedziczenie Pola i funkcje statyczne Funkcje zaprzyjaźnione, this 1 Nazwa typu Rozmiar Zakres Uwagi bool 1 bit wartości true albo false stdbool.h TYPY ZNAKOWE
Programowanie i struktury danych
Programowanie i struktury danych Wykªad 3 1 / 37 tekstowe binarne Wyró»niamy dwa rodzaje plików: pliki binarne pliki tekstowe 2 / 37 binarne tekstowe binarne Plik binarny to ci g bajtów zapami tanych w
Wstęp do Programowania 2
Wstęp do Programowania 2 dr Bożena Woźna-Szcześniak bwozna@gmail.com Akademia im. Jana Długosza Wykład 5 W programowaniu obiektowym programista koncentruje się na obiektach. Zadaje sobie pytania typu:
1. Wprowadzenie do C/C++
Podstawy Programowania - Roman Grundkiewicz - 013Z Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub
PROGRAMOWANIE OBIEKTOWE W C++ cz. 2. Dziedziczenie, operacje wej cia-wyj cia, przeładowanie operatorów.
PROGRAMOWANIE OBIEKTOWE W C++ cz. 2 Dziedziczenie, operacje wej cia-wyj cia, przeładowanie operatorów. Dziedziczenie Dziedziczenie jest to technika pozwalaj c na definiowanie nowej klasy przy wykorzystaniu
Interfejsy, klasy wewn trzne jako szczególny rodzaj obiektów
Interfejsy, klasy wewn trzne jako szczególny rodzaj obiektów Robert A. Kªopotek r.klopotek@uksw.edu.pl Wydziaª Matematyczno-Przyrodniczy. Szkoªa Nauk cisªych, UKSW 16.03.2017 Interfejsy raz jeszcze "Interfejsy
Składnia C++ Programowanie Obiektowe Mateusz Cicheński
Składnia C++ Programowanie Obiektowe Mateusz Cicheński Klasy i modyfikatory dostępu Przesłanianie metod Polimorfizm Wskaźniki Metody wirtualne Metody abstrakcyjne i interfejsy Przeciążanie operatorów Słowo
Model obiektu w JavaScript
16 marca 2009 E4X Paradygmat klasowy Klasa Deniuje wszystkie wªa±ciwo±ci charakterystyczne dla wybranego zbioru obiektów. Klasa jest poj ciem abstrakcyjnym odnosz cym si do zbioru, a nie do pojedynczego
Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska
Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego Iwona Kochaoska Programowanie Obiektowe Programowanie obiektowe (ang. object-oriented programming) - metodyka tworzenia programów komputerowych,
Programowanie w C++ Wykład 12. Katarzyna Grzelak. 28 maja K.Grzelak (Wykład 12) Programowanie w C++ 1 / 27
Programowanie w C++ Wykład 12 Katarzyna Grzelak 28 maja 2018 K.Grzelak (Wykład 12) Programowanie w C++ 1 / 27 Klasy cd K.Grzelak (Wykład 12) Programowanie w C++ 2 / 27 Klasy - powtórzenie Klasy typy definiowane
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie? a) konstruktor b) referencje c) destruktor d) typy 2. Które z poniższych wyrażeń są poprawne dla klasy o nazwie
wykład IV uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C, a C++. wykład IV dr Jarosław Mederski Spis Język C++ - wstęp
Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 2 3 4 Historia C++ został zaprojektowany w 1979 przez Bjarne Stroustrupa jako rozszerzenie języka C o obiektowe mechanizmy abstrakcji danych i
Programowanie w C++ Wykład 11. Katarzyna Grzelak. 13 maja K.Grzelak (Wykład 11) Programowanie w C++ 1 / 30
Programowanie w C++ Wykład 11 Katarzyna Grzelak 13 maja 2019 K.Grzelak (Wykład 11) Programowanie w C++ 1 / 30 Klasy cd K.Grzelak (Wykład 11) Programowanie w C++ 2 / 30 Klasy - powtórzenie Klasy typy definiowane
Podstawy modelowania w j zyku UML
Podstawy modelowania w j zyku UML dr hab. Bo»ena Wo¹na-Szcze±niak Akademia im. Jan Dªugosza bwozna@gmail.com Wykªad 8 Diagram pakietów I Diagram pakietów (ang. package diagram) jest diagramem strukturalnym,
Podstawy Programowania Obiektowego
Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja
Programowanie 2. Język C++. Wykład 3.
3.1 Programowanie zorientowane obiektowo... 1 3.2 Unie... 2 3.3 Struktury... 3 3.4 Klasy... 4 3.5 Elementy klasy... 5 3.6 Dostęp do elementów klasy... 7 3.7 Wskaźnik this... 10 3.1 Programowanie zorientowane
Obszar statyczny dane dostępne w dowolnym momencie podczas pracy programu (wprowadzone słowem kluczowym static),
Tworzenie obiektów Dostęp do obiektów jest realizowany przez referencje. Obiekty w języku Java są tworzone poprzez użycie słowa kluczowego new. String lan = new String( Lancuch ); Obszary pamięci w których
Sposoby przekazywania parametrów w metodach.
Temat: Definiowanie i wywoływanie metod. Zmienne lokalne w metodach. Sposoby przekazywania parametrów w metodach. Pojcia klasy i obiektu wprowadzenie. 1. Definiowanie i wywoływanie metod W dotychczas omawianych
W2 Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy :
Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy : class nazwa_klasy prywatne dane i funkcje public: publiczne dane i funkcje lista_obiektów;
Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni. Wykład 4. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni Wykład 4 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Dziedziczenie Przestrzenie nazw Na podstawie: A.
Zaawansowane programowanie w języku C++ Klasy w C++
Zaawansowane programowanie w języku C++ Klasy w C++ Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń
Laboratorium 1 - Programowanie proceduralne i obiektowe
Laboratorium 1 - Programowanie proceduralne i obiektowe mgr inż. Kajetan Kurus 4 marca 2014 1 Podstawy teoretyczne 1. Programowanie proceduralne (powtórzenie z poprzedniego semestru) (a) Czym się charakteryzuje?
Podstawy Programowania Obiektowego
Podstawy Programowania Obiektowego Pojęcie struktury i klasy. Konstruktor i destruktor. Spotkanie 08 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Spotkanie 08 Klasy: definicja a deklaracja klasy dane składowe
Do czego służą klasy?
KLASY Dorota Pylak 2 Do czego służą klasy? W programowaniu obiektowym posługujemy się obiektami. Obiekty charakteryzują się: cechami (inaczej - atrybutami lub stanami) operacjami, które na nich można wykonywać
Imi i nazwisko... Egzamin - Programowanie Obiektowe II rok informatyki, studia pierwszego stopnia, niestacjonarne Termin zerowy
Imi i nazwisko....................................................... Egzamin - Programowanie Obiektowe II rok informatyki, studia pierwszego stopnia, niestacjonarne Termin zerowy 21.01.2017 Instrukcja:
Programowanie obiektowe w języku C++ dr inż. Jarosław Forenc
Rok akademicki 2016/2017, Wykład nr 4 2/45 Plan wykładu nr 4 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2016/2017
Kompozycja i dziedziczenie klas
Programowanie obiektowe Kompozycja i dziedziczenie klas Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Kompozycja i dziedziczenie klas
Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18
Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Literatura Języki i paradygmaty programowania Wykład 2 1. C. S. Horstman, G. Cornell, core Java 2 Podstawy, Helion 2003
Język C++ wykład VI. uzupełnienie notatek: dr Jerzy Białkowski. Programowanie C/C++ Język C++ wykład VI. dr Jarosław Mederski.
- - uzupełnienie notatek: dr Jerzy Białkowski - - 1-2 - - - 1 #include 2 #include 3 # include 4 using namespace std ; 5 6 class Punkt { 7 8 private : 9 double
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki int getmax (int a, int b) { return (a > b? a : b); float getmax (float a, float b) { return (a > b? a : b); long getmax (long a, long b)
Języki i paradygmaty programowania
Języki i paradygmaty programowania WYDZIAŁ ELEKTRONIKI i INFORMATYKI dr inż. Robert Arsoba Politechnika Koszalińska Wydział Elektroniki i Informatyki POLITECHNIKA KOSZALIŃSKA 2009/2010 Materiały do wykładu
Wykład 1. Program przedmiotu. Programowanie Obiektowe (język C++) Literatura. Program przedmiotu c.d.:
Program przedmiotu Programowanie Obiektowe (język C++) Wykład 1. Definiowanie prostych klas. Przykłady. Przypomnienie: typy referencyjne, domyślne wartości argumentów, przeciąŝanie funkcji. Konstruktory,
Materiały do zajęć VII
Spis treści I. Klasy Materiały do zajęć VII II. III. Konstruktor Właściwości i indeksatory Klasy Programowanie obiektowe wiadomości wstępne Paradygmat programowania obiektowego Abstrakcja Hermetyzacja
19. Obiektowo± 1 Kacze typowanie. 2 Klasy
1 Kacze typowanie 19. Obiektowo± Sk d interpreter wie, jakiego typu s np. przekazywane do metody argumenty? Tak naprawd wcale nie musi wiedzie. Do poprawnego dziaªania programu istotne jest,»e przekazywany
Programowanie obiektowe
Programowanie obiektowe Wykład 2 Marcin Młotkowski 4 marca 2015 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 47 Krótki opis C Obiektowy, z kontrolą typów; automatyczne odśmiecanie;
Programowanie obiektowe w Perlu
Programowanie obiektowe w Perlu Piotr Wydrych http://www.kt.agh.edu.pl/~wydrych/ Wydziaª Elektrotechniki, Automatyki, Informatyki i Elektroniki Katedra Telekomunikacji 30 kwietnia 2009 1/26 Obiekty, klasy,
Podstawy modelowania w j zyku UML
Podstawy modelowania w j zyku UML dr hab. Bo»ena Wo¹na-Szcze±niak Akademia im. Jan Dªugosza bwozna@gmail.com Wykªad 2 Zwi zki mi dzy klasami Asocjacja (ang. Associations) Uogólnienie, dziedziczenie (ang.
Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016
Wykład 2 17 marca 2016 Dziedziczenie Klasy bazowe i potomne Dziedziczenie jest łatwym sposobem rozwijania oprogramowania. Majac klasę bazowa możemy ja uszczegółowić (dodać nowe pola i metody) nie przepisujac
Język C++ wykład VII. uzupełnienie notatek: dr Jerzy Białkowski. Programowanie C/C++ Język C++ wykład VII. dr Jarosław Mederski. Spis.
Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 2 3 4 Obiektowość języka C++ ˆ Klasa (rozszerzenie struktury), obiekt instancją klasy, konstruktory i destruktory ˆ Enkapsulacja - kapsułkowanie,
Programowanie obiektowe w C++ Wykład 12
Programowanie obiektowe w C++ Wykład 12 dr Lidia Stępień Akademia im. Jana Długosza w Częstochowie L. Stępień (AJD) 1 / 22 Zakresowe pętle for double tab[5] {1.12,2.23,3.33,4.12,5.22 for(double x: tab)
Projektowanie i programowanie obiektowe (materiały do wykładu cz. VI)
Projektowanie i programowanie obiektowe (materiały do wykładu cz. VI) Jacek Cichosz www.zssk.pwr.wroc.pl Katedra Systemów i Sieci Komputerowych Politechnika Wrocławska Dziedziczenie 221 Dziedziczenie Dziedziczenie
Wykład V. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej
Wykład V - semestr II Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Programowanie obiektowe Dziedziczenie (inheritance) - mechanizm
Programowanie obiektowe język C++
Programowanie obiektowe język C++ Dr inż. Sławomir Samolej D108A, tel: 865 1486, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.pl Podziękowanie: Chcę podziękować dr inż.. Grzegorzowi Hałdasiowi
TEMAT : KLASY DZIEDZICZENIE
TEMAT : KLASY DZIEDZICZENIE Wprowadzenie do dziedziczenia w języku C++ Język C++ możliwa tworzenie nowej klasy (nazywanej klasą pochodną) w oparciu o pewną wcześniej zdefiniowaną klasę (nazywaną klasą
Mechanizm dziedziczenia
Mechanizm dziedziczenia Programowanie obiektowe jako realizacja koncepcji ponownego wykorzystania kodu Jak przebiega proces dziedziczenia? Weryfikacja formalna poprawności dziedziczenia Realizacja dziedziczenia
Programowanie Obiektowo Zorientowane w języku C++ Klasy, pola, metody
Programowanie Obiektowo Zorientowane w języku C++ Klasy, pola, metody Mirosław Głowacki 1 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej
Projektowanie klas c.d. Projektowanie klas przykład
Projektowanie klas c.d. ogólne wskazówki dotyczące projektowania klas: o wyodrębnienie klasy odpowiedź na potrzeby życia (obsługa rozwiązania konkretnego problemu) o zwykle nie uda się utworzyć idealnej
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 3. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Abstrakcja funkcyjna Struktury Klasy hermetyzacja
Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Programowanie w C++ Wykład 8. Katarzyna Grzelak. 15 kwietnia K.Grzelak (Wykład 8) Programowanie w C++ 1 / 33
Programowanie w C++ Wykład 8 Katarzyna Grzelak 15 kwietnia 2019 K.Grzelak (Wykład 8) Programowanie w C++ 1 / 33 Klasy - powtórzenie Klasy typy definiowane przez użytkownika Klasy zawieraja dane składowe
Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016
Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,
Kurs programowania. Wykład 3. Wojciech Macyna. 22 marca 2019
Wykład 3 22 marca 2019 Klasy wewnętrzne Klasa wewnętrzna class A {... class B {... }... } Klasa B jest klasa wewnętrzna w klasie A. Klasa A jest klasa otaczajac a klasy B. Klasy wewnętrzne Właściwości
Do czego służą klasy?
KLASY Dorota Pylak 2 Do czego służą klasy? W programowaniu obiektowym posługujemy się obiektami. Obiekty charakteryzują się: cechami (inaczej - atrybutami lub stanami) operacjami, które na nich można wykonywać
Podstawy algorytmiki i programowania - wykład 4 C-struktury
1 Podstawy algorytmiki i programowania - wykład 4 C-struktury Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy
KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany
KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie
Programowanie w C++ Wykład 13. Katarzyna Grzelak. 4 czerwca K.Grzelak (Wykład 13) Programowanie w C++ 1 / 26
Programowanie w C++ Wykład 13 Katarzyna Grzelak 4 czerwca 2018 K.Grzelak (Wykład 13) Programowanie w C++ 1 / 26 Klasy - powtórzenie Klasy typy definiowane przez użytkownika Klasy zawieraja dane składowe
KLASY cz.1. Dorota Pylak
KLASY cz.1 Dorota Pylak Do czego służą klasy? 2 W programowaniu obiektowym posługujemy się obiektami. Obiekty charakteryzują się: cechami (inaczej - atrybutami lub stanami) operacjami, które na nich można
Android. Podstawy tworzenia aplikacji. Piotr Fulma«ski. March 4, 2015
Android Podstawy tworzenia aplikacji Piotr Fulma«ski Instytut Nauk Ekonomicznych i Informatyki, Pa«stwowa Wy»sza Szkoªa Zawodowa w Pªocku, Polska March 4, 2015 Table of contents Framework Jednym z najwarto±ciowszych
Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20
Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 O mnie prowadzący wykład: Dariusz Wardowski pokój: A334 dyżur: środa, godz. 10.00 12.00 e-mail: wardd@math.uni.lodz.pl
Instrukcja do pracowni specjalistycznej z przedmiotu. Obiektowe programowanie aplikacji
Politechnika Białostocka Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej Instrukcja do pracowni specjalistycznej z przedmiotu Obiektowe programowanie aplikacji Kod przedmiotu: TS1C410201
Technologie i usługi internetowe cz. 2
Technologie i usługi internetowe cz. 2 Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 15 luty 2014 r. 1 Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to paradygmat programowania,
wykład V uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C++ klasy i obiekty wykład V dr Jarosław Mederski Spis Język C++ - klasy
i obiekty Programowanie i obiekty uzupełnienie notatek: dr Jerzy Białkowski i obiekty 1 2 3 4 i obiekty Obiektowość języka C++ Na tym wykładzie poznamy: ˆ Klasa (w języku C++ rozszerzenie struktury, typ
Wzorce projektowe strukturalne cz. 1
Wzorce projektowe strukturalne cz. 1 Krzysztof Ciebiera 19 pa¹dziernika 2005 1 1 Wst p 1.1 Podstawowe wzorce Podstawowe wzorce Podstawowe informacje Singleton gwarantuje,»e klasa ma jeden egzemplarz. Adapter
Programowanie, część I
11 marca 2010 Kontakt Wstęp Informacje organizacyjne Materiał na ćwiczenia Plan wykładu http://www.fuw.edu.pl/~rwys/prog rwys@fuw.edu.pl tel. 22 55 32 263 Materiał na ćwiczenia Informacje organizacyjne
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki zaprojektowany jako rozszerzenie języka C o obiektowe mechanizmy abstrakcji danych jest to język pozwalający na programowanie zarówno proceduralne
Wykład 4: Klasy i Metody
Wykład 4: Klasy i Metody Klasa Podstawa języka. Każde pojęcie które chcemy opisać w języku musi być zawarte w definicji klasy. Klasa definiuje nowy typ danych, których wartościami są obiekty: klasa to
Programowanie w C++ Wykład 9. Katarzyna Grzelak. 14 maja K.Grzelak (Wykład 9) Programowanie w C++ 1 / 30
Programowanie w C++ Wykład 9 Katarzyna Grzelak 14 maja 2018 K.Grzelak (Wykład 9) Programowanie w C++ 1 / 30 Klasy - powtórzenie Klasy typy definiowane przez użytkownika Klasy zawieraja dane składowe plus
Java - tablice, konstruktory, dziedziczenie i hermetyzacja
Java - tablice, konstruktory, dziedziczenie i hermetyzacja Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU zmienne tablicowe konstruktory klas dziedziczenie hermetyzacja
Enkapsulacja, dziedziczenie, polimorfizm
17 grudnia 2008 Spis treści I Enkapsulacja 1 Enkapsulacja 2 Spis treści II Enkapsulacja 3 Czym jest interfejs Jak definuje się interfejs? Rozszerzanie interfejsu Implementacja interfejsu Częściowa implementacja
Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij.
Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice
Programowanie obiektowe
Wykład 2 28 lutego 2019 Plan wykładu 1 2 3 4 5 Plan wykładu 1 2 3 4 5 Krótki opis C Obiektowy, z kontrolą typów; automatyczne odśmiecanie; standardy ISO i ECMA; podobny składniowo do C++; Język C Krótka
TEMAT : KLASY POLIMORFIZM
TEMAT : KLASY POLIMORFIZM 1. Wprowadzenie do polimorfizmu i funkcji wirtualnych w języku C++ Język C++ zakłada, że w pewnych przypadkach uzasadnione jest tworzenie klas, których reprezentanci w programie
C++ - klasy. C++ - klasy. C++ - klasy. C++ - klasy. C++ - klasy INNE SPOSOBY INICJALIZACJI SKŁADOWYCH OBIEKTU
Inicjalizacja agregatowa zmiennej tablicowej int a[5] = 1,2,3,4,5 INNE SPOSOBY INICJALIZACJI SKŁADOWYCH OBIEKTU Struktury są również agregatami, dlatego: struct X double f; char c; X x1 = 1, 2.2, 'c' Ale
Wyliczanie wyrażenia obiekty tymczasowe
Wyliczanie wyrażenia obiekty tymczasowe Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2013 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu
Programowanie obiektowe w języku
Programowanie obiektowe w języku C++ Stanisław Gepner sgepner@meil.pw.edu.pl Dziedziczenie Wstęp Zacznijmy od przykładu Przykład rolniczy Każde zwierzątko wydaje dźwięk Każde się tak samo porusza Musimy
Programowanie obiektowe Wykład 6. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/14
Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/14 Wirtualne destruktory class A int* a; A(int _a) a = new int(_a);} virtual ~A() delete a;} class B: public A double* b;
Język C++ Programowanie obiektowe
Język C++ Programowanie obiektowe Cechy programowania obiektowego abstrakcyjne typy danych hermetyczność obiektów (kapsułkowanie) dziedziczenie polimorfizm Programowanie proceduralne vs. programowanie
public: // interfejs private: // implementacja // składowe klasy protected: // póki nie będziemy dziedziczyć, // to pole nas nie interesuje
Zbudujemy klasę Definicję klasy zapiszmy w pliku tstring.h #ifndef TSTRING_H #define TSTRING_H #include // w pliku nagłówkowym NIE // otwieramy przestrzeni std // interfejs private: // implementacja
Zaawansowane programowanie w języku C++ Programowanie obiektowe
Zaawansowane programowanie w języku C++ Programowanie obiektowe Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka
Programowanie obiektowe w C++ Wykład 1
Programowanie obiektowe w C++ Wykład 1 dr Lidia Stępień Akademia im. Jana Długosza w Częstochowie L. Stępień (AJD) POwCPP 1 / 24 Literatura Prata Stephen, Szkoła programowania. Język C++. Wydawnictwo Helion,
WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH
WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH Klasa: 3TIR - Technik informatyk Program: 351203 Wymiar: 4 h tygodniowo Podręcznik: Kwalifikacja E.14 Programowanie
Języki Programowania. Prowadząca: dr inż. Hanna Zbroszczyk. tel: Konsultacje: piątek:
Języki Programowania Prowadząca: dr inż. Hanna Zbroszczyk e-mail: gos@if.pw.edu.pl tel: +48 22 234 58 51 Konsultacje: piątek: 12.00 13.30 www: http://www.if.pw.edu.pl/~gos/students/jp Politechnika Warszawska
ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15
ANALIZA NUMERYCZNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Metoda Eulera 3 1.1 zagadnienia brzegowe....................... 3 1.2 Zastosowanie ró»niczki...................... 4 1.3 Output do pliku
Lab. 02: Algorytm Schrage
Lab. 02: Algorytm Schrage Andrzej Gnatowski 5 kwietnia 2015 1 Opis zadania Celem zadania laboratoryjnego jest zapoznanie si z jednym z przybli»onych algorytmów sªu» cych do szukania rozwi za«znanego z
PARADYGMATY PROGRAMOWANIA Wykład 4
PARADYGMATY PROGRAMOWANIA Wykład 4 Metody wirtualne i polimorfizm Metoda wirualna - metoda używana w identyczny sposób w całej hierarchii klas. Wybór funkcji, którą należy wykonać po wywołaniu metody wirtualnej
Wprowadzenie do programowanie obiektowego w języku C++
Wprowadzenie do programowanie obiektowego w języku C++ Część czwarta Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Programowanie 2. Język C++. Wykład 2.
2.1 Definicja, deklaracja, wywołanie funkcji.... 1 2.2 Funkcje inline... 4 2.3 Przekazanie do argumentu funkcji wartości, adresu zmiennej.... 5 2.4 Wskaźniki do funkcji... 8 2.5 Przeładowanie funkcji...
PARADYGMATY PROGRAMOWANIA Wykład 2
PARADYGMATY PROGRAMOWANIA Wykład 2 Definiowanie klas w C++ - ciąg dalszy Lista inicjalizująca konstruktora Przeznaczenie - do inicjalizacji pól klasy z kwalifikatorem const i inicjalizacji obiektów składowych