Program cwiczen laboratoryjnych C/C++

Transkrypt

Program cwiczen laboratoryjnych C/C++
Języki i Paradygmaty programowania - cz 2 j. C++ - ćwiczenia laboratoryjne
Warunki zaliczenia ćwiczeń laboratoryjnych:
Obecność i aktywność na zajęciach - uruchomienie zadań i ćwiczeń - 15%
Wykonanie i pozytywne zaliczenie projektu - 15%
Uzyskanie pozytywnej oceny na kolokwium zaliczeniowym. 70%
godz
1.
2.
Treści
Wprowadzenie: środowisko projektowe języka C++ w systemach Windows i Linux – powtórzenie z
j. C - tablica struktur. Podstawowe operacje we/wy C++, przestrzeń nazw. - 1g.
Rozszerzenia języka C++, modyfikator stałości const, typ wyliczeniowy enum, domyślne wartości
argumentów funkcji, przeładowanie nazw funkcji, pojęcie sygnatury funkcji, funkcje rozwijalne w
miejscu inline. typ referencyjny i jego zastosowanie. - 1g.
3.
Wprowadzenie do klasy i obiektów: dostęp do składowych klasy (private,
public),
implementowanie metod klasy, obiektów. Konstruktory i destruktory - inicjalizacja obiektów,
domyślny konstruktor, destruktor i jego zastosowania. - 1g.
4.
Składowe stałe obiektu: ochrona zmiennych przed modyfikacją, stałe pola i metody składowe, lista
inicjalizacyjna konstruktora, dostęp do składowych użycie wskaźnika this i operatora zakresu ::.
- 1g.
Referencje do obiektów i zaawansowany dostęp do obiektów: przekazywanie argumentów funkcji
przez referencję, referencja do obiektu. Statyczne pola i metody - static., wskaźniki na składowe
klasy, klasa biblioteczna string jako przykład wzorcowej klasy. - 1g.
5.
6.
Selektywny dostęp: poprzez przyjaźń (friend),globalne i składowe funkcje zaprzyjaźnione, klasy
zaprzyjaźnione, przeładowanie operatorów, przeciążenie operatora we/wy dla obiektu. – 2g
7,8.
Konstruktory obiektów złożonych, domyślne i jawne konstruktory kopiujące i operatory przypisania,
konwersje typu i operatory rzutujące. 2g.
Dynamiczny przydział pamięci na stercie operatory new, delete. Obsługa alokacji pamięci na
stercie, analiza błędów związanych z "wyciekiem" pamięci, tablice obiektów 2g.
9,10
11,12.
11,12.
13,14.
15,16.
17,18.
19,20.
21,22.
23,24.
25,26.
27,28.
29,30.
Dziedziczenie: zabezpieczony dostęp do składowych (protected, argumenty konstruktorów
bazowych, przesłanianie metod klasy bazowej, dziedziczenie wielopokoleniowe - selektywny
dostęp. – 2g
Metody wirtualne: pojęcie polimorfizmu, klasy abstrakcyjne, dostęp do metod wirtualnych.
Dziedziczenie wielokrotne (wielobazowe): znaczenie, rozwiązywanie problemów, wyprowadzenie
prywatne,
Wejście, wyjście w C++, Pliki tekstowe i binarne.
Przykład projektu - porównanie relacji pomiędzy obiektami - dziedziczenie a zawieranie.
Definiowanie wyjątków.
Standardowe klasy pojemnikowe (STL)
Szablony funkcji i klas
Identyfikacja typów – RTTI
Kolokwium zaliczeniowe.
Zaliczenie projektów i poprawa zaliczeń.
Wykaz: materiałów pomocniczych, literatury podstawowej i uzupełniającej:
Wykłady
Źródła udostępnione na serwerze
torus.uck.pk.edu.pl
w katalogu
/export/dydaktyka/jraszka/cpp
Jerzy Grębosz Pasja C++, Symfonia C++, Edition 2000, wydanie 2009 r.
Jesse Liberty ”C++ dla każdego”, „C++. Księga eksperta” Wydawnictwo HELION.
Nicolai M. Josuttis, C++ Programowanie zorientowane obiektowo. Vademecum profesjonalisty,
Kayshav Dattatri Język C++. Efektywne programowanie obiektowe - HELION, 2005 r.
Bruce Eckel ,Thinking in C++. Edycja polska - Tom 1 Wydawnictwo HELION 2003
Jan Rusek ”ABC programowania w C++”,
HELION, 2003
nr cw.
.