Witam, mam takie zadanie do zrobienia poniżej wpisałem moje rozwiązanie prosił bym o sprawdzenie i jakieś poprawki lub wskazówki :)
Napisać poniższy kod(bez rzeczy zbędnych)
a) Napisać definicję klasy osoba zawierającą trzy pola prywatne: rzeczywiste wiek, wskaźnik do ciągu znaków nazwisko oraz całkowite stałe id. Klasa ma też zawierać (napisać definicje poniższych metod)
-konstruktor z trzema parametrami o wartościach domyślnych- parametry mają inicjalizować w/w pola,
-destruktor
a) Zdefiniować klasę sklep zawierającą pole prywatne kierownik klasy osoba.
b) Zdefiniować funkcje globalną fun, a w niej zdeklarować obiekt klasy sklep.
c) Napisać funkcje main, a w niej zdeklarować dwa obiekty klasy osoba(każdy w inny sposób) i wywołać fun.
d) Wskazać(strzałką) miejsca uruchomienia destruktora każdego z obiektów użytych w programie. Przy strzałce dopisać nazwe likwidowanego obiektu.
#include <string.h>
class osoba {
private: double wiek;
char* nazwisko;
const int ID;
public: osoba(double w=18, char* n="Nowak", int i=0):ID(i)
{
wiek=w;
nazwisko=new char[strlen(n)+1];
strcpy(nazwisko,n);
}
~osoba()
{
delete[] nazwisko;
}
};
class sklep {
private: osoba kierownik;
};
sklep fun()
{
sklep jakis_sklep;
return jakis_sklep;
}
void main()
{
osoba osoba1;
osoba* osoba2= new osoba;
fun();
//<- tu destruktor sklep
delete osoba2; //<- tu destruktor usunie osobe2
}// <- tu destruktor usunie osobe1