Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 1. a) klasa która posiada 2 proste prywatne atrubuty, jeden z nich jest const
- class A {
- public:
- // const musi zostać zadeklarowany w liście inicjalizacyjnej
- A() : atrybut2_const(0) {
- }
- // 1. b1) funkcja do przydzielania pamięci na tablice obiektów
- virtual A *przydziel_pamięć_na_tablicę_obiektów(int size) {
- return (new A[size]);
- }
- // 1. b2) funkcja do przydzielania pamięci na tablice wskaźników na obiekty
- virtual A **przydziel_pamięć_na_tablicę_wskaźników_na_obiekty(int size) {
- A **tablica_wskaźników = new A*[size];
- for (int i = 0; i < size; ++i) {
- tablica_wskaźników[i] = new A();
- }
- return tablica_wskaźników;
- }
- // 1. c1) usuwanie tablicy obiektów
- virtual void usuń_pamięć_tablicy_obiektów(A *do_usunięcia) {
- delete[] do_usunięcia;
- }
- // 1. c2) usuwanie tablicy wskaźników na obiekty
- virtual void usuń_pamięć_wskaźników_na_obiekty(A **do_usunięcia, int size) {
- for (int i = 0; i < size; ++i) {
- delete do_usunięcia[i];
- }
- delete do_usunięcia;
- }
- // 1. d1) pokaż obiekty
- void pokaż() {
- cout << "atrybut1: " << atrybut1 << endl;
- cout << "atrybut2_const: " << atrybut2_const << endl;
- }
- // 1. d2) zmień obiekt
- void zmień_atrybut1(int nowy_atrybut1) {
- atrybut1 = nowy_atrybut1;
- }
- private:
- int atrybut1;
- const int atrybut2_const;
- };
Advertisement
Add Comment
Please, Sign In to add comment