16.11.2014 Views

Programowanie obiektowe C++ Informatyka/Automatyka i ...

Programowanie obiektowe C++ Informatyka/Automatyka i ...

Programowanie obiektowe C++ Informatyka/Automatyka i ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

• funkcję składową, która doda współrzędne dwóch punktów i zwróci je jako punkt<br />

wynikowy.<br />

Zdefiniować obiekty i podać przykładowe wywołania metod. Jaka będzie różnica jeśli typ<br />

obiektu zadeklarowany zostanie jako struktura, a nie klasa?<br />

2. Zaprojektować klasę punktNd będącą uogólnieniem klasy z ćwiczenia (1) na punkty n-<br />

wymiarowe (współrzędne przechowywane powinny być w dynamicznie rezerwowanej tablicy).<br />

Zadeklarować oraz zdefiniować:<br />

(a) konstruktor inicjujący,<br />

(b) uzupełnić definicję klasy o składnik statyczny, który ma za zadanie przechowywać<br />

liczbę istniejących obiektów klasy, a następnie dokonać jego inicjalizacju,<br />

(c) funkcję składową o nazwie dodaj, realizującą dodawanie dwóch punktów,<br />

(d) funkcję globalną o nazwie dodaj, realizującą dodawanie dwóch punktów,<br />

(e) destruktor uwzględniający zwalnianie dynamicznie przydzielonej pamięci.<br />

3. Zadeklarować unię mogącą przechowywaæ elementy typu float, int i char, a następnie:<br />

(a) napisać krótki program, w którym należy zainicjalizować unię oraz zrealizowaæ operacje<br />

przypisania jej wartości różnych typów,<br />

(b) napisać funkcję składową wyświetlającą zawartość struktury,<br />

(c) rozbudować unię o pole bitowe w wielkości 2 bitów i zrealizować przypisanie wartości<br />

inicjalizującej,<br />

(d) zadeklarować unię jako anonimową, oraz zrealizować operacje z punktu (a).<br />

4. Dane są następujące definicje:<br />

class X {<br />

int i;<br />

float j;<br />

public:<br />

int fun(int i,float j){return i;};<br />

};<br />

int fun(int i, float j){return i;};<br />

X A;int i;float j;<br />

Ocenić poprawność poniższych instrukcji:<br />

• int fun(int i,int j){return i;};<br />

• int fun(int i,float j){return i;};<br />

• int fun(float j,int i){return i;};<br />

• void fun(int i,float j){};<br />

• int fun(int i,float j);

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!