Programowanie w języku C++

Slides:



Advertisements
Podobne prezentacje
Projektowanie Aplikacji Komputerowych
Advertisements

C++ wykład 2 ( ) Klasy i obiekty.
Programowanie obiektowe
Programowanie obiektowe PO PO - LAB 2 Wojciech Pieprzyca.
Deklaracje i definicje klas w C++ Składowe, pola, metody Konstruktory
Programowanie obiektowe
Programowanie obiektowe
Wzorce.
Zaawansowane metody programowania – Wykład V
Static, const, volatile.
Dziedziczenie. Po co nam dziedziczenie? class osoba { char * imie, char * imie, * nazwisko; * nazwisko;public: void wypisz_imie(); void wypisz_imie();
Programowanie w środowisku sieciowym
Programowanie obiektowe w Javie
OOP - programowanie zorientowane obiektowo w VB.NET
25/08/ Języki programowania 1 Piotr Górczyński Obiekty i zdarzenia.
Kurs Pascala – spis treści
Struktury.
Dziedziczenie i jego rodzaje
C++ wykład 6 ( ) Polimorfizm.
C++ wykład 2 ( ) Klasy i obiekty.
Zasady zaliczenia Warunki uzyskania zaliczenia:
Wykład 1: Wskaźniki Podstawy programowania Programowanie w C
Języki programowania obiektowego
Programowanie Komputerów
Wstęp do programowania obiektowego
Projektowanie i programowanie obiektowe II - Wykład II
Programowanie obiektowe W1 Wprowadzenie
Klasy w C++. Deklaracja klasy class NazwaTwojejKlasy { //w tym miejscu piszemy definicje typów, //zmienne i funkcje jakie mają należeć do klasy. }; //tutaj.
Obiekty dynamiczne Tworzenie klas 3 MPDI Programowanie obiektowe W4.
T: Różnice pomiędzy programowaniem strukturalnym a obiektowym
Źródła: podręcznikopracował: A. Jędryczkowski.
Programowanie strukturalne i obiektowe
Jakub Wołczko W obiektowym świecie… Jakub Wołczko
Programowanie obiektowe III rok EiT dr inż. Jerzy Kotowski Wykład XIII.
WPROWADZENIE W ŚWIAT OBIEKTÓW
Java – coś na temat Klas Piotr Rosik
Dziedziczenie Marek Serek Dziedziczenie Dziedziczenie to jeden z fundamentów programowania obiektowego. Umożliwia sprawne i łatwe wykorzystywanie.
Dziedziczenie Maciek Mięczakowski
Inicjalizacja i sprzątanie
INTERFEJSY I KLASY WEWNĘTRZNE
JAVA.
Programowanie obiektowe Wykład 6 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/14 Dariusz Wardowski.
Warsztaty C# Część 6 Grzegorz Piotrowski Grupa .NET PO
Programowanie obiektowe – język C++
Programowanie obiektowe 2013/2014
PWSZ Gniezno // codefly 2009
Prasek Aneta, Skiba Katarzyna. Funkcje stałe const to takie funkcje, które nie mogą modyfikować stanu obiektu. Oznacza to, że funkcja stała nie może zmieniać.
Kurs języka C++ – wykład 3 ( )
Kurs języka C++ – wykład 5 ( )
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Programowanie strukturalne i obiektowe C++
Model obiektowy bazy danych
Kurs języka C++ – wykład 4 ( )
K URS JĘZYKA C++ – WYKŁAD 6 ( ) Polimorfizm.
Klasy ( uzupełnienie ). Definicja klasy Klasa jest zbiorem logicznie powiązanych danych i funkcji, przeznaczonych do realizacji konkretnego zadania; Zamknięcie.
Programowanie obiektowe
Paweł Starzyk Obiektowe metody projektowania systemów
Dziedziczenie wielobazowe. dana klasa może mieć kilka bezpośrednich klas bazowych: dana klasa może mieć kilka bezpośrednich klas bazowych: kolorpołożenie.
Programowanie Zaawansowane
Dziedziczenie Wykład 7 Dziedziczenie sekwencyjne
Partnerstwo dla Przyszłości 1 Lekcja 28 Dziedziczenie i rodzaje dziedziczenia.
K URS JĘZYKA C++ – WYKŁAD 3 ( ) Przenoszenie Składowe statyczne Funkcje wbudowane Argumenty domyślne.
Programowanie Obiektowe – Wykład 6
Klasy, pola, obiekty, metody. Modyfikatory dostępu, hermetyzacja
Programowanie Obiektowe – Wykład 2
Programowanie obiektowe
Object vs. class (rozdzial 13 The NEURON book)
Zapis prezentacji:

Programowanie w języku C++ NobleProg Programowanie w języku C++

CZĘŚĆ 4 – PROGRAMOWANIE OBIEKTOWE Programowanie w języku C++ CZĘŚĆ 4 – PROGRAMOWANIE OBIEKTOWE

Teoria - ogólnie Programowanie obiektowe - (ang. object- oriented programming - OOP ) - metodologia tworzenia programów komputerowych, która definiuje programy za pomocą "obiektów" - elementów łączących stan (czyli dane) i zachowanie (czyli procedury, tu: metody). Obiektowy program komputerowy wyrażony jest jako zbiór takich obiektów, komunikujących się pomiędzy sobą w celu wykonywania zadań. Podejście to różni się od tradycyjnego programowania proceduralnego, gdzie dane i procedury nie są ze sobą bezpośrednio związane. Programowanie obiektowe ma ułatwić pisanie, konserwację i wielokrotne użycie programów lub ich fragmentów.

Specyfikatory dostępu Służą one do kontroli możliwości dostępu do poszczególnych składowych klasy. Public – składowe publiczne, dostępne wszędzie, również poza klasą Private(default) – składowe prywatne, widoczne jedynie wewnątrz samej klasy – dla jej własnych metod Protected – zasady dostępu są takie same jak w przypadku specyfikatora Private, z jedną tylko różnicą – składowe oznaczone jako Protected będą widoczne w klasach pochodnych, jako Private, nie.  

Definicja klasy Klasa składa się ze słowa kluczowego class oraz nazwy klasy. Zasady tworzenia nazw klas są takie same jak dla zmiennych. Wewnątrz klasy znajdują się pola i metody klasy oraz ich specyfikatory dostępu. Kod 28

Pola i metody klasy Są to zmienne które znajdują się wewnątrz klasy, zgrupowane wewnątrz obiektu w jedną całość, przechowujące stan obiektu – wartości zmiennych. Są to najważniejsze elementy, do których dostęp zazwyczaj określamy jako prywatny (Private). Wartości pól klasy modyfikujemy bądź pobieramy za pomocą metod klasy. Metody to funkcje będące częścią składową klasy. Dostęp do nich ograniczony jest odpowiednimi specyfikatorami. Ponownie kod 28

Obiekt - instancja Obiekt to stworzenie konkretnego wystąpienia danej klasy (klasa ożywa). Przykładowo, mamy klasę Samochodzik, jej obiektem będzie konkretne wystąpienie, np. VW lub Opel

Przykładzik Kod 29

Konstruktor Kod 30

Dziedziczenie Można też dziedziczyć wiele klas np. Class prostokąt : public figura, public zestaw { } Kod 31

Metoda statyczna Można ją wywoływać bez odniesienia do obiektu Kod 31a

Metoda wirtualna - polimorfizm Po skompilowaniu na ekranie zobaczymy dwa wypisy: "Tu funkcja pisz z klasy A". Stało się tak dlatego, że wskaźnik jest do typu A. Gdy ustawiliśmy wskaźnik na obiekt typu pochodnego, a następnie wywołaliśmy funkcję składową, to kompilator sięgnął po funkcję pisz z klasy bazowej. Kod 32 (prawie )

Metoda wirtualna Kod 32 (prawie ) Można jednak określić żeby kompilator nie sięgał po funkcję z klasy bazowej, ale sam się zorientował na co wskaźnik pokazuje. Do tego służy przydomek virtual, a funkcja składowa nim oznaczona nazywa się wirtualną. Różnica polega tylko na dodaniu słowa kluczowego virtual, co wygląda tak:

Dziękuję za uwagę