Owad():waga(1),jadowitosc(false) {cout<<"konstruktor domyslny owada\n";}
|
|
- Iwona Jastrzębska
- 8 lat temu
- Przeglądów:
Transkrypt
1 // Wskaźniki #include<iostream> using namespace std; class Owad int waga; bool jadowitosc; Owad():waga(1),jadowitosc(false) cout<<"konstruktor domyslny owada\n";} Owad (bool j):waga(2),jadowitosc(j) cout<<"konstruktor owada\n";} ~Owad() cout<<"destruktor owada\n";} void Ruch() cout<<"owad lata\n";} 1
2 class Komar : public Owad bool brudas; Komar(): Owad(true),brudas(false) cout<<"konstruktor komara\n";} void Aktywnosc() cout<<"brzeczy i gryzie\n";} ~Komar () cout<<"komar rozgnieciony na scianie\n";} class Mucha : public Owad bool brudas; Mucha(): brudas(true) cout<<"konstruktor muchy\n";} 2
3 void Aktywnosc() cout<<"lata i brzeczy\n";} ~Mucha () cout<<"mucha dostala w beret\n";} int main() Owad* owad=new Owad; cout<<"rozmiar obiektu : "; cout<<sizeof(owad); cout<<"\nowad :\n"; cout<<"waga - "<<owad->waga; cout<<"\njadowitosc - "<<owad->jadowitosc<<endl; owad->ruch(); delete owad; cout<<endl; Owad* mucha=new Mucha; cout<<"rozmiar obiektu : "; cout<<sizeof(mucha); cout<<"\nmucha :\n"; 3
4 cout<<"waga - "<<mucha->waga; cout<<"\njadowitosc - "<<mucha->jadowitosc<<endl; //cout<<"\nbrudas - "<<mucha->brudas; mucha->ruch(); //mucha->aktywnosc(); delete mucha; cout<<endl; Owad* komar=new Komar; cout<<"rozmiar obiektu : "; cout<<sizeof(komar); cout<<"\nkomar :\n"; cout<<"waga - "<<komar->waga; cout<<"\njadowitosc - "<<komar->jadowitosc<<endl; //cout<<"\nbrudas - "<<komar->brudas; komar->ruch(); //komar->aktywnosc(); delete komar; cout<<endl; 4
5 Mucha* mucha_1=new Mucha; /*pomimo delete mucha jest pamiętana jako wskaźnik do klasy Owad*/ cout<<"rozmiar obiektu : "; cout<<sizeof(mucha_1); cout<<"\nmucha :\n"; cout<<"waga - "<<mucha_1->waga; cout<<"\njadowitosc - "<<mucha_1->jadowitosc; cout<<"\nbrudas - "<<mucha_1->brudas<<endl; mucha_1->ruch(); mucha_1->aktywnosc(); delete mucha_1; cout<<endl; Komar* komar_1=new Komar; //j. w. cout<<"rozmiar obiektu : "; cout<<sizeof(komar_1); cout<<"\nkomar :\n"; cout<<"waga - "<<komar_1->waga; cout<<"\njadowitosc - "<<komar_1->jadowitosc; cout<<"\nbrudas - "<<komar_1->brudas<<endl; 5
6 komar_1->ruch(); komar_1->aktywnosc(); delete komar_1; cout<<endl; /* Mucha* mucha_2=new Owad; wymagane rzutowanie - o tym później */ } system("pause"); return 0; 6
7 Konstruktor domyslny owada Rozmiar obiektu : 4 Owad : waga - 1 jadowitosc - 0 Owad lata Destruktor owada Konstruktor domyslny owada Konstruktor muchy Rozmiar obiektu : 4 Mucha : waga - 1 jadowitosc - 0 Owad lata Destruktor owada Konstruktor owada Konstruktor komara Rozmiar obiektu : 4 Komar : waga - 2 7
8 jadowitosc - 1 Owad lata Destruktor owada Konstruktor domyslny owada Konstruktor muchy Rozmiar obiektu : 4 Mucha : waga - 1 jadowitosc - 0 brudas - 1 Owad lata Lata i brzeczy Mucha dostala w beret Destruktor owada 8
9 Konstruktor owada Konstruktor komara Rozmiar obiektu : 4 Komar : waga - 2 jadowitosc - 1 brudas - 0 Owad lata Brzeczy i gryzie Komar rozgnieciony na scianie Destruktor owada Press any key to continue... 9
10 // Rzutowanie #include<iostream> using namespace std; class Owad int waga; bool jadowitosc; Owad():waga(1),jadowitosc(false) cout<<"konstruktor domyslny owada\n";} ~Owad() cout<<"destruktor owada\n";} void Ruch() cout<<"owad lata\n";} 10
11 class Komar : public Owad bool brudas; Komar(): Owad(),brudas(false) cout<<"konstruktor komara\n";} void Aktywnosc() cout<<"brzeczy i gryzie\n";} ~Komar () cout<<"komar rozgnieciony na scianie\n";} int main() cout<<"static_cast\n\n"; Komar* komar=static_cast<komar*>(new Owad); cout<<"waga : "<<komar->waga<<endl; cout<<"jadowitosc : "<<komar->jadowitosc<<endl; 11
12 cout<<"brudas : "<<komar->brudas<<endl; komar->aktywnosc(); komar->ruch(); delete komar; //Komar* komar_1=dynamic_cast<komar*>(new Owad); cout<<"reinterpret_cast\n\n"; Komar* komar_1=reinterpret_cast<komar*>(new Owad); cout<<"waga : "<<komar_1->waga<<endl; cout<<"jadowitosc : "<<komar_1->jadowitosc<<endl; cout<<"brudas : "<<komar_1->brudas<<endl; komar_1->aktywnosc(); komar_1->ruch(); delete komar_1; } system("pause"); return 0; 12
13 static_cast Konstruktor domyslny owada waga : 1 jadowitosc : 0 brudas : 253 Brzeczy i gryzie Owad lata Komar rozgnieciony na scianie Destruktor owada reinterpret_cast Konstruktor domyslny owada waga : 1 jadowitosc : 0 brudas : 253 Brzeczy i gryzie Owad lata Komar rozgnieciony na scianie Destruktor owada Press any key to continue... 13
14 Przesłanianie funkcji klasy bazowej w klasie potomnej Zmiana implementacji funkcji klasy bazowej w klasie pochodnej zachodzi, gdy klasa pochodna tworzy funkcję o tym samym zwracanym typie, ale z inna implementacją funkcja klasy bazowej została przesłonięta (override) 14
15 // Przeslanianie funkcji klasy // bazowej w klasie potomnej #include<iostream> using std::cout; using std::endl; class Ssak void Glos() cout<<"glos ssaka\n";} class Kot : public Ssak void Glos() cout<<"miau!!\n";} 15
16 void main() Ssak zwierz; zwierz.glos(); Kot Mruczek; Mruczek.Glos(); Mruczek.Ssak::Glos(); system("pause"); } Glos ssaka Miau!! Glos ssaka Press any key to continue... 16
17 // Przeslanianie funkcji klasy // bazowej w klasie potomnej #include<iostream> using std::cout; using std::endl; class Ssak void Ruch(int m) cout<<"ssak przeszedl "<<m<<" krokow\n";} class Kot : public Ssak void Ruch() cout<<"kot przeszedl 10 krokow\n";} 17
18 void main() Ssak zwierz; zwierz.ruch(5); Kot Mruczek; Mruczek.Ruch(); //Mruczek.Ruch(6); Mruczek.Ssak::Ruch(8); system("pause"); } Ssak przeszedl 5 krokow Kot przeszedl 10 krokow Ssak przeszedl 8 krokow Press any key to continue... 18
19 //Działanie modyfikatora const #include <iostream> using namespace std; class Czolg void Armata() cout<<"armata"<<endl;} void Naped() cout<<"naped"<<endl;} void Zaloga()const cout<<"4-5"<<endl;} class T34 : public Czolg void Armata() cout<<"f-34"<<endl;} 19
20 void Naped() const cout<<"diesel"<<endl;} void Zaloga() cout<<"4"<<endl;} class Panther: public Czolg void Armata()const cout<<"kwk-43"<<endl;} void Naped() cout<<"benzyna"<<endl;} void Zaloga()const cout<<"5"<<endl;} void main() cout<<"tworzymy obiekty :\n"; T34 Rudy; cout<<"\nt - 34\n"; Rudy.Armata(); Rudy.Naped(); 20
21 Rudy.Zaloga(); Panther Nr_101; cout<<"\npanther\n"; Nr_101.Armata(); Nr_101.Naped(); Nr_101.Zaloga(); cout<<"\n Wskazniki do klasy czolg\n"; Czolg* czolgi[4]; cout<<"\nt - 34\n"; czolgi[0]=new T34; czolgi[0]->armata(); czolgi[0]->naped(); czolgi[0]->zaloga(); czolgi[1]=new Panther; cout<<"\npanther\n"; czolgi[1]->armata(); czolgi[1]->naped(); czolgi[1]->zaloga(); } system ("pause"); 21
22 Tworzymy obiekty : T - 34 F-34 diesel 4 Panther KwK-43 benzyna 5 Wskazniki do klasy czolg T - 34 armata naped 4-5 Panther armata naped 4-5 Press any key to continue... 22
23 Funkcje (metody) wirtualne Obiekt klasy Pies jest jednocześnie obiektem klasy Ssak. W C++ możliwe jest przypisywanie wskaźnikom do klas bazowych wskaźników do klas pochodnych, np. Ssak* pssak = new Pies; Na stercie tworzymy nowy obiekt klasy Pies, zaś otrzymany wskaźnik przypisujemy wskaźnikowi do obiektów klasy Ssak. Wskaźnik ten może zostać wykorzystany do wywołania dowolnej metody klasy Ssak 23
24 // Metody wirtualne #include<iostream> using namespace std; class Ssak void Ruch() cout<<"ssak chodzi\n";} void Sen() cout<<"ssak spi\n";} virtual void Glos()cout<<"Glos ssaka\n";} virtual void Glod() cout<<"ssak je\n";} class Pies : public Ssak void Glos()cout<<"Hau\n";} void Ruch()cout<<"Pies biega\n";} virtual void Sen() cout<<"pies spi\n";} virtual void Glod() cout<<"pies je\n";} 24
25 void main() Ssak *ppies = new Pies; ppies->glod(); ppies->glos(); ppies->ruch(); ppies->sen(); system("pause"); } Pies je Hau Ssak chodzi Ssak spi Press any key to continue... 25
26 Funkcja Ssak Pies Przesłonięcie Ruch() NIE Sen() virtual NIE Glos() virtual TAK Glod() virtual virtual TAK Wniosek: Funkcje wirtualne w klasie bazowej są przesłonięte 26
27 Działanie funkcji wirtualnych Funkcja wirtualna jest śledzona przez obiekt kompilator tworzy tablicę funkcji wirtualnych v-table, która jest przechowywana dla każdego typu, a każdy obiekt tego typu przechowuje wskaźnik do niej vptr, vpointer. Część Ssak Obiekt Pies 27
28 VPTR &Ruch Ssak &Glos VPTR Ssak &Ssak:Ruch() &Pies:Glos() Pies 28
29 // Wielokrotne użycie funkcji wirtualnych #include<iostream> using std::cout; using std::cin; class Ssak virtual void Glos()cout<<"Glos ssaka\n";} class Pies : public Ssak void Glos()cout<<"Hau\n";} class Kot : public Ssak void Glos()cout<<"Miau\n";} 29
30 class Kon : public Ssak void Glos()cout<<"Ihaaaa!\n";} class Swinka : public Ssak void Glos()cout<<"Kwik!\n";} void main() Ssak* zwierzeta[5]; Ssak* ptr; int wybor, i; for (i = 0; i < 5; i++) cout<<"(1)pies (2)kot (3)kon (4)swinka : "; cin>>wybor; 30
31 switch (wybor) case 1: ptr = new Pies; break; case 2: ptr = new Kot; break; case 3: ptr = new Kon; break; case 4: ptr = new Swinka; break; default: ptr = new Ssak; break; } zwierzeta[i] = ptr; } for (i = 0; i < 5; i++) zwierzeta[i]->glos(); } system("pause"); 31
32 (1)pies (2)kot (3)kon (4)swinka : 0 (1)pies (2)kot (3)kon (4)swinka : 1 (1)pies (2)kot (3)kon (4)swinka : 2 (1)pies (2)kot (3)kon (4)swinka : 3 (1)pies (2)kot (3)kon (4)swinka : 4 Glos ssaka Hau Miau Ihaaaa! Kwik! Press any key to continue... 32
33 /* Okrajanie przy przekazywaniu argumentów przez wartość*/ #include<iostream> using namespace std; class Ssak virtual void Glos()cout<<"Glos ssaka\n";} class Pies : public Ssak void Glos()cout<<"Hau\n";} class Kot : public Ssak void Glos()cout<<"Miau\n";} 33
34 /*przekazanie parametrów przez wartość, wskaźnik i referencję*/ void Wartosc(Ssak s) s.glos();} void Wskaznik(Ssak* p) p->glos();} void Referencja(Ssak& r) r.glos(); } void main() Ssak* ptr = 0; int wybor; while (1) bool Wyjscie = false; cout<<"(1)pies (2)kot (0)wyjscie : "; cin>>wybor; 34
35 switch (wybor) case 0: Wyjscie = true; break; case 1: ptr = new Pies; break; case 2: ptr = new Kot; break; default: ptr = new Ssak; break; } if(wyjscie) break; Wskaznik(ptr); Wartosc(*ptr); Referencja(*ptr); } system("pause"); } 35
36 (1)pies (2)kot (0)wyjscie : 1 Hau Glos ssaka Hau (1)pies (2)kot (0)wyjscie : 2 Miau Glos ssaka Miau (1)pies (2)kot (0)wyjscie : 0 Press any key to continue... 36
37 //Działanie modyfikatora const //w funkcjach wirtualnych #include <iostream> using namespace std; class Czolg virtual void Armata() cout<<"armata"<<endl;} virtual void Naped() cout<<"naped"<<endl;} virtual void Zaloga()const cout<<"4-5"<<endl;} class T34 : public Czolg virtual void Armata() cout<<"f-34"<<endl;} 37
38 virtual void Naped() const cout<<"diesel"<<endl;} virtual void Zaloga() cout<<"4"<<endl;} class Panther: public Czolg virtual void Armata()const cout<<"kwk-43"<<endl;} virtual void Naped() cout<<"benzyna"<<endl;} virtual void Zaloga()const cout<<"5"<<endl;} void main() cout<<"tworzymy obiekty :\n\n"; T34 Rudy; cout<<"\nt - 34\n"; Rudy.Armata(); 38
39 Rudy.Naped(); Rudy.Zaloga(); Panther Nr_101; cout<<"\npanther\n"; Nr_101.Armata(); Nr_101.Naped(); Nr_101.Zaloga(); cout<<"\n Wskazniki do klasy czolg\n"; Czolg* czolgi[4]; cout<<"\nt - 34\n"; czolgi[0]=new T34; czolgi[0]->armata(); czolgi[0]->naped(); czolgi[0]->zaloga(); czolgi[1]=new Panther; cout<<"\npanther\n"; czolgi[1]->armata(); czolgi[1]->naped(); czolgi[1]->zaloga(); system ("pause"); } 39
40 Tworzymy obiekty : T - 34 F-34 diesel 4 Panther KwK-43 benzyna 5 Wskazniki do klasy czolg T - 34 F-34 naped 4-5 Panther armata benzyna 5 Press any key to continue... 40
41 Funkcja Czolg T34 Panther Armata() const Naped() const Zaloga() const const Wniosek: Zakreślone są funkcje przesłonięte w klasie potomnej. Aby funkcja została przesłonięta, musi być const lub nie w obu klasach : bazowej i potomnej. Jeśli modyfikator const występuje tylko w jednej z nich funkcja klasy bazowej nie jest przesłonięta w klasie potomnej 41
42 Przeładowanie i przesłanianie (polimorfizm) funkcji Przeładowanie funkcji Funkcje mają te same nazwy, należą do tej samej klasy, różnią się listą parametrów lub zwracanym typem Przesłanianie funkcji Funkcje mają te same nazwy, te same listy parametrów i typy zwracane, ale należą do różnych klas 42
class Samochod { void Ruch(); }; class Amfibia : public Samochod { void Ruch(); // amfibie pływają };
class Samochod void Ruch(); ; class Amfibia : public Samochod void Ruch(); // amfibie pływają ; 1 Rzutowanie w C++ Mechanizm pozwalający na tymczasową lub stałą zmianę interpretacji obiektu przez kompilator
Dziedziczenie ze wspólnej klasy bazowej. Amfibia
Dziedziczenie ze wspólnej klasy bazowej Pojazd Pojazd Samochód Statek Amfibia 1 /*Dziedziczenie wielokrotne z wspólnej klasy bazowej*/ #include using namespace std; char* naped_ziemia[]="benzyna",
string Rodzaj[4]= {"TV ", "wieza ", "DVD ", "kino "}; string Producent[4]={"Phillips", "Sony ", "Sanyo ", "Samsung "};
// Referencja #include #include using namespace std; string Rodzaj[4]= "TV ", "wieza ", "DVD ", "kino "; string Producent[4]="Phillips", "Sony ", "Sanyo ", "Samsung "; class Sprzet_AV
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
Ssak::Ssak(Ssak& ref):waga(ref.ile_wazy()) {cout << "Konstruktor kopiujacy klasy Ssak...\n";} 1
/* Wirtualny konstruktor kopiujący*/ #include using namespace std; class Ssak public: Ssak(int w):waga(w) cout
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
Programowanie 2. Język C++. Wykład 9.
9.1 Ukrywanie metod, metody nadpisane... 1 9.2 Metody wirtualne, wirtualny destruktor... 2 9.3 Metody czysto wirtualne... 6 9.4 Klasy abstrakcyjne... 7 9.5 Wielodziedziczenie... 9 9.1 Ukrywanie metod,
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
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
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,
Plik klasy. h deklaracje klas
Plik klasy. h deklaracje klas KLASY DLA PRZYKŁADÓW Z POLIMORFIZMEM enum dim r1 = 1, r2, r3; class figura public: static int const maxliczbafigur; = 100; static int liczbafigur; dim rn; rodzaj przestrzeni
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
2.4 Dziedziczenie. 2.4 Dziedziczenie Przykłady programowania w C - kurs podstawowy
2.4 Dziedziczenie Poprzednie dwa rozdziały które dotyczyły zagadnienia automatów komórkowych na przykładach programów w C++. Mogłyby one sugerować że niekoniecznie trzeba programować obiektowo aby napisać
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)
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
dr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2012/2013 Wykład nr 6 (07.12.2012) dr inż. Jarosław Forenc Rok
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)
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
Identyfikacje typu na etapie. wykonania (RTTI)
Identyfikacje typu na etapie (Run Time Type Identification) wykonania (RTTI) Może powstać taka sytuacje, gdy w trakcie kompilacji typ obiektu nie jest znany. C++ implementuje polimorfizm poprzez hierarchie
Laboratorium 2. Funkcje wirtualne
Laboratorium 2 Funkcje wirtualne Zadanie 1. Zapoznaj się z programem z pliku lab2-p1.cpp. Czy program działa prawidłowo? Dlaczego funkcja rachunek() jest zdefiniowana jako virtual? Co się stanie jeśli
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 8 Przykład realizowany na wykładzie Klasy StringBad i String. Wstępne pliki załaczone jako źródła.
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
Listy powiązane zorientowane obiektowo
Listy powiązane zorientowane obiektowo Aby zilustrować potęgę polimorfizmu, przeanalizujmy zorientowaną obiektowo listę powiązaną. Jak zapewne wiesz, lista powiązana jest strukturą danych, zaprojektowaną
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:
Podczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej.
Polimorfizm jest filarem programowania obiektowego, nie tylko jeżeli chodzi o język C++. Daje on programiście dużą elastyczność podczas pisania programu. Polimorfizm jest ściśle związany z metodami wirtualnymi.
Środowisko programistyczne GEANT4
Środowisko programistyczne GEANT4 Leszek Adamczyk Wydział Fizyki i Informatyki Stosowanej Akademia Górniczo-Hutnicza Wykłady w semestrze zimowym 2013/2014 Informacje wstępne Kurs oparty jest na: dokumentacji
ATD. Wykład 8. Programowanie (język C++) abstrakcyjny typ danych. Abstrakcyjne typy danych (ATD) Metody czysto wirtualne. Definicje i uwagi:
Programowanie (język C++) Wykład 8. ATD abstrakcyjny typ danych Tomasz Marks - Wydział MiNI PW -1- Tomasz Marks - Wydział MiNI PW -2- Metody czysto wirtualne Metody czysto wirtualne otrzymujemy inicjalizując
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.
1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość
1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float
C++ - [4-7] Polimorfizm
Slajd 1 z 14 C++ - [4-7] Polimorfizm Nysa 2004-2013. Autor: Wojciech Galiński. wersja dnia 20 maja 2013 r. Slajd 2 z 14 Polimorfizm i klasa polimorficzna POLIMORFIZM (cytat z Wikipedii) (wielopostaciowość)
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
#include "stdafx.h" #include <iostream> #include "windows.h" using namespace std;
// W8_3.cpp : Defines the entry point for the console application. // Przeciazenie operatorow new, delete // Przeciazenie globalne: przeciazone operatory new, delete // dzialaja dla danych dowolnych //
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
Problem Próby rozwiązania Maszyna stanów Inne zastosowania Podsumowanie. Maszyny stanów. Programowanie gier bez Unity, cz. 3.
Maszyny stanów Programowanie gier bez Unity, cz. 3 Piotr Korgul Koło Naukowe Twórców Gier Polygon 3 grudnia 2014 r. Cykl Programowanie gier bez Unity 1 Jak zorganizować prace nad grą? 2 Jak działa gra?
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
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
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
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
Techniki Programowania wskaźniki
Techniki Programowania wskaźniki Łukasz Madej Katedra Informatyki Stosowanej i Modelowania Wykłady opracowane we współpracy z Danutą Szeligą, Łukaszem Sztangretem Wskaźniki Dla typu T zapis T* oznacza
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
Opis zagadnieo 1-3. Iteracja, rekurencja i ich realizacja
Opis zagadnieo 1-3 Iteracja, rekurencja i ich realizacja Iteracja Iteracja to czynnośd powtarzania (najczęściej wielokrotnego) tej samej instrukcji (albo wielu instrukcji) w pętli. Mianem iteracji określa
Zaawansowane programowanie w C++ (PCP)
Zaawansowane programowanie w C++ (PCP) Wykład 3 - polimorfizm. dr inż. Robert Nowak - p. 1/14 Powtórzenie Powtórzenie: klasy autonomiczne: konstruktor, konstruktor kopiujacy, operator przypisania, destruktor
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,
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 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
Programowanie i struktury danych
Programowanie i struktury danych 1 / 30 STL Standard Template Library, STL (ang. = Standardowa Biblioteka Wzorców) biblioteka C++ zawierająca szablony (wzorce), które umożliwiają wielokrotne użycie. Główne
Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej
Zajęcia nr 2 Programowanie strukturalne dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Pętla while #include using namespace std; int main ()
Zajęcia nr 5 Algorytmy i wskaźniki. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej
Zajęcia nr 5 Algorytmy i wskaźniki dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Plan Zapis i odczyt z plików tekstowych O tablicach ciąg dalszy Referencje
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Laboratorium 3 Instrukcje wyboru 1 INSTRUKCJE WYBORU Instrukcje sterujące to takie instrukcje, które sterują przebiegiem programu w zależności od spełnienia
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
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
Mechanizm dziedziczenia
Mechanizm dziedziczenia Programowanie obiektowe jako realizacja koncepcji ponownego wykorzystania kodu Jak przebiega proces dziedziczenia? Weryfikacja formalna poprawności dziedziczenia Realizacja dziedziczenia
class Student Deklaracja klasy Osoba: Deklaracja klasy Student:
Osoba Student Będziemy mieli 2 klasy: Osoba, dla której zapamiętamy dane takie jak: imie, nazwisko i wiek Oraz klasę Student, w której będziemy też dodatkowo pamiętać kierunek studiów. Deklaracja klasy
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
Programowanie obiektowe w języku C++ Zarządzanie procesami. dr inż. Jarosław Forenc. Przeładowanie (przeciążanie) operatorów
Rok akademicki 2016/2017, Wykład nr 5 2/40 Plan wykładu nr 5 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2016/2017
Programowanie Obiektowew języku C++ Zadania L9
Programowanie Obiektowew języku C++ Zadania L9 Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki
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, część I
Programowanie, część I Rafał J. Wysocki Instytut Fizyki Teoretycznej, Wydział Fizyki UW 22 lutego 2011 Rafał J. Wysocki (rwys@fuw.edu.pl) Programowanie, część I 22 lutego 2011 1 / 80 Wstęp Informacje organizacyjne
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
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
Wstęp do programowania obiektowego, wykład 7
Wstęp do programowania obiektowego, wykład 7 Klasy i funkcje abstrakcyjne Przeciążanie funkcji Definiowanie i interpretacja złożonych typów danych w C++ Wskaźniki do funkcji 1 KLASA ABSTRAKCYJNA 2 Klasa
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 w C++ Wykład 12. Katarzyna Grzelak. 20 maja K.Grzelak (Wykład 12) Programowanie w C++ 1 / 32
Programowanie w C++ Wykład 12 Katarzyna Grzelak 20 maja 2019 K.Grzelak (Wykład 12) Programowanie w C++ 1 / 32 Klasy - powtórzenie Klasy typy definiowane przez użytkownika Klasy zawieraja dane składowe
Wstęp do informatyki- wykład 12 Funkcje (przekazywanie parametrów przez wartość i zmienną)
1 Wstęp do informatyki- wykład 12 Funkcje (przekazywanie parametrów przez wartość i zmienną) Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion,
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
Operatory na rzecz typu TString
Operatory na rzecz typu TString Dopiszmy w definicji klasy operator[], dzięki któremu potraktujemy obiekt jak tablicę class TString { public: char& operator[]( size_t n ); const char& operator[]( size_t
Jzyk C++ cz 3. Jarosław Gramacki Instytut Informatyki i Elektroniki ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )
Jzyk C++ cz 3 Jarosław Gramacki Instytut Informatyki i Elektroniki # $$%%& ' ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )!" 2 # $$%%& ' ( $%%/,))3 ( %* 2 / 4 ( ( *' *''*,
Programowanie w języku C++
Programowanie w języku C++ Część siódma 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 tych materiałów nie zastąpi
ROZDZIAŁ 2. Operatory
Bibliografia [1] Jerzy Grębosz, Symfonia C++, Oficyna Kallimach, Kraków, 1999, [2] Jerzy Grębosz, Pasja C++, Oficyna Kallimach, Kraków, 1999, [3] Bjarne Stroustrup, Język C++, WNT, Warszawa, 1997, [4]
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?
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;
Przeciążenie (przeładowanie nazw) funkcji
Przeciążenie (przeładowanie nazw) funkcji dla większości języków (w tym C) zasada w programie może być tylko jedna funkcja o danej nazwie kompilator C++ - dopuszcza więcej niż jedną funkcję o tej samej
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 4. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 4 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Przeciążanie operatorów Funkcje zaprzyjaźnione Na
Wstęp do programowania
wykład 8 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Podprogramy Czasami wygodnie jest wyodrębnić jakiś fragment programu jako pewną odrębną całość umożliwiają to podprogramy.
EGZAMIN PROGRAMOWANIE II (10 czerwca 2010) pytania i odpowiedzi
EGZAMIN PROGRAMOWANIE II (10 czerwca 2010) pytania i odpowiedzi 1. Napisz wskaźnik do funkcji fun tak zdeklarowanej: T* fun( int, double const& ) const; definicja wskaźnika musi być precyzyjna, inaczej
Polimorfizm w pigułce
Polimorfizm w pigułce Kwadrat kwadr( 5 );... wypiszdane( &kwadr );... void wypiszdane( Kwadrat * k ) cout
Rzutowanie i konwersje
Rzutowanie i konwersje Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2013 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania
Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27
Programowanie w C++ Wykład 5 Katarzyna Grzelak 16 kwietnia 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27 Pojęcia z poprzednich wykładów Tablica to ciag obiektów tego samego typu, zajmujacy ciagły
Techniki Programowania wskaźniki 2
Techniki Programowania wskaźniki 2 Łukasz Madej Katedra Informatyki Stosowanej i Modelowania Wykłady opracowane we współpracy z Danutą Szeligą, Łukaszem Sztangretem Jeżeli wskaźnik pokazuje na element
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
Dziedziczenie & W slajdach są materiały zapożyczone z https://www.ii.uni.wroc.pl/~prz/2012lato/cpp/slajdy/cpp5.
Dziedziczenie 27.04.2016 & 04.05.2016 W slajdach są materiały zapożyczone z https://www.ii.uni.wroc.pl/~prz/2012lato/cpp/slajdy/cpp5.ppt class A{ private: int x, y; public: void setvaluex(); void setvaluey();
IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi
IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi EGZAMIN PIERWSZY (25 CZERWCA 2013) JĘZYK C++ poprawiam ocenę pozytywną z egzaminu 0 (zakreśl poniżej x) 1. Wśród poniższych wskaż poprawną formę definicji
Programowanie obiektowe
Programowanie obiektowe 10.04.2017 W slajdach są materiały zapożyczone z https://www.ii.uni.wroc.pl/~prz/2012lato/cpp/slajdy/cpp5.ppt Przykład wykorzystania obiektu Obiekt X jest instancją klasy Y Obiekt
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
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
KLASY cz4. Dorota Pylak. destruktory składowe statyczne przeciążanie operatorów. wskaźniki
KLASY cz4. destruktory składowe statyczne przeciążanie operatorów Dorota Pylak wskaźniki 2 Klasy - podsumowanie poznanych wiadomości Deklaracja klasy może zawierać pola, konstruktory oraz metody. W deklaracji
Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016
Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa
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 1 Literatura Literatura podstawowa: Prata Stephen. Szkoła programowania. Język C++. Wydanie V. Helion,
Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej
Wykład I - semestr II Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2015 c Copyright 2015 Janusz Słupik Zaliczenie przedmiotu Do zaliczenia przedmiotu niezbędne jest
Operacje wejścia/wyjścia (odsłona druga) - pliki
Operacje wejścia/wyjścia (odsłona druga) - pliki Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały
Programowanie w językach
Programowanie w językach wysokiego poziomu Obsługa plików za pomocą strumieni Elektronika i Telekomunikacja, semestr III rok akademicki 2013/2014 dr inż. Paweł Myszkowski Plan zajęć a) otwieranie i zamykanie
Część 4 życie programu
1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część
Projektowanie obiektowe. Roman Simiński Wzorce projektowe Wybrane wzorce strukturalne
Projektowanie obiektowe Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Wzorce projektowe Wybrane wzorce strukturalne Fasada Facade Pattern 2 Wzorzec Fasada Facade Pattern koncepcja 3 Wzorzec
Programowanie obiektowe - Przykładowe zadania egzaminacyjne (2005/2006)
Programowanie obiektowe - Przykładowe zadania egzaminacyjne (2005/2006) Część 1. Teoria Wyjaśnij pojęcia, podaj przykład: klasa obiekt konstruktor destruktor kapsułkowanie (hermetyzacja) wskaźnik this
Informatyka 2. Wykład nr 3 ( ) Politechnika Białostocka. - Wydział Elektryczny. dr inŝ. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2008/2009 Wykład nr 3 (05.11.2008) Rok akademicki 2008/2009, Wykład
Język C++ Różnice między C a C++
Język C++ Różnice między C a C++ Plan wykładu C a C++ Różnice ogólne Typy Deklaracje zmiennych C++ jako rozszerzenie C Domyślne argumenty funkcji Przeciążanie funkcji Referencje Dynamiczny przydział pamięci
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,
Technologie cyfrowe semestr letni 2018/2019
Technologie cyfrowe semestr letni 2018/2019 Tomasz Kazimierczuk Wykład 8 (15.04.2019) Kompilacja Kompilacja programu (kodu): proces tłumaczenia kodu napisanego w wybranym języku na kod maszynowy, zrozumiały
it = 0; memset((void *)ptr, 0, items*sizeof(double)); cout << "Konstruktor sparametryzowany " << title << " adres: " << ptr << "\n";
// W7.cpp : Defines the en point for the console application. // Konstruktor kopiujacy. Funkcje zwraca obiekt klasy. // Przeciazenie operatora przypisania 1 #include "stdafx.h" #include #include