Witam,
piszę program na zaliczenie semestru i trafiłem na problem. W jaki sposób w klasie umieścić dynamiczną tablicę z obiektami innej klasy? Konkretniej chodzi o to, że mam klasę Mieszkaniec (z polami Imie, Nazwisko i Wiek oraz metodami pozwalającymi wyświetlić i zmienić każde z pól) i klasę Mieszkanie (z polem Powierzchnia). Chciałbym aby po stworzeniu obiektu Mieszkanko tablica była pusta, a potem za pomocą metod możliwe było dodawania nowych obiektów z klasy Mieszkaniec.
Do tej pory napisałem coś takiego:
class Mieszkanie
{
float Powierzchnia;
unsigned int MaxIloscMieszkancow;
Mieszkaniec *Mieszkancy;
public:
Mieszkanie(const float powierzchnia)
{
if(powierzchnia >= 10) { Powierzchnia = powierzchnia; }
MaxIloscMieszkancow = (int)(Powierzchnia/2);
Mieszkancy = new Mieszkaniec[MaxIloscMieszkancow];
}
}
oraz
class Mieszkaniec
{
char Imie[15];
char Nazwisko[15];
float Wiek;
public:
Mieszkaniec()
{
strcpy_s(Imie, 0);
strcpy_s(Nazwisko, 0);
Wiek = 0;
}
Mieszkaniec(const char *imie, const char *nazwisko, const float wiek, const unsigned int zadowolenie, const unsigned int uciazliwosc)
{
strcpy_s(Imie, imie);
strcpy_s(Nazwisko, nazwisko);
if(wiek >= 0) { Wiek = wiek; }
}
//METODY WYŚWIETLAJĄCE I PRZYPISUJĄCE WARTOŚCI DO Imie, Nazwisko i Wiek
}
Niestety ten kod nie działa, a przynajmniej ja nie umiem go w odpowiedni sposób wywołać z funkcji main tak żeby zadziałał.
Jak powinienem przerobić te klasy aby działały w opisany przeze mnie sposób? Poza tym jak je potem wywoływać z maina?
Z góry dziękuję za wszelką pomoc :)