Programowanie 2. Lista zadań 3. 1 Zadanie 1. Napisać program
Transkrypt
Programowanie 2. Lista zadań 3. 1 Zadanie 1. Napisać program
Programowanie 2. Lista zadań 3. Zadanie 1. Napisać program ilustrujący następujące własności unii: 1. Unię moŜna definiować bez nazwy (anonimowe). Anonimowe unie nie mogą mieć elementów private, protected, zawierać metod. 2. Unie nie mogą dziedziczyć od klas, struktur. 3. Domyślny typ dostępu w unii jest public. 4. Atrybuty unii nie mogą być inicjowane w unii. Inicjowanie atrybutów moŜe odbywać za pomocą konstruktorów. 5. Unia nie moŜe zawierać referencji, obiektów. Rozwiązanie: cw03-01-uniaWlasnosci.cpp Zadanie 2. Sprawdzić wielkość struktury, funkcją sizeof(), gdy struktura ma (a) trzy atrybuty typu int, double, char, (b) tablicę double t[100], (c) dwie funkcje double f1(), double f2(), (d) dwa atrybuty typu int, int, jedną funkcję void f(int). Rozwiązanie: cw03-02-wielkoscStruktury.cpp Zadanie 3. Sprawdzić następujące własności struktury 1. Domyślny typ dostępu do elementów struktury jest public. 2. Struktura moŜe zawierać konstruktora, destruktora. 3. Struktura moŜe dziedziczyć od struktury, klasy. 4. W strukturze nie moŜna inicjować zmiennych. 5. W strukturze moŜna inicjować zmienne typu static const. Rozwiązanie: Programowanie2-cpp-Wyklad-03.pdf, cw03-03-struktura.cpp Zadanie 4. Zdefiniować w klasie, w obszarze private, wskaźnik. Za pomocą konstruktora umieścić go na stercie. Zdefiniować dwie metody, w obszarze public, słuŜące do czytania i zmiany wartości wskaźnika. Za pomocą zdefiniowanych metod wykonać operacje na wskaźniku. Rozwiązanie: cw03-04-klasaAtrybuty.cpp Zadanie 5. Napisać program ilustrujący typy dostępu do elementów klasy public, protected, private. Rozwiązanie: Programowanie2-cpp-Wyklad-03.pdf Zadanie 6. Pokazać, Ŝe nie moŜna utworzyć obiektu, tablicy obiektów, obiektu na stercie jeŜeli w klasie jest zdefiniowany przeładowany konstruktor i brak jest jawnej postaci konstruktora domyślnego. Rozwiązanie: cw03-06a-konstruktor.cpp Zadanie 7. Zdefiniować klasę z trzema atrybutami typu int, char, char *, i przeładowanymi konstruktorami które inicjują zdefiniowane atrybuty. Zdefiniować konstruktora kopiującego i destruktora. Rozwiązanie: cw03-07a-typyKonstruktorow.cpp Zadanie 8. Napisać program ilustrujący przekazanie do argumentu metody obiektu i referencji do obiektu. Rozwiązanie: cw03-08a-przekazanieObiektu-Adresu.cpp Zadanie 9. Metody const. Pokazać, Ŝe • metoda typu const nie moŜe zmieniać wartości atrybutów klasy. • obiekty typu const nie mogą wywoływać metod nie const. Rozwiązanie: cw03-09-metodyConst.cpp Zadanie 10. Metody static. Pokazać, Ŝe • metoda typu static nie ma dostępu do zmiennych, metod nie static, • metody static moŜna wywoływać bez obiektu. Rozwiązanie: cw03-10-metodyStatic.cpp 1