Witajcie
Mam dość nietypowy problem, który udało mi się częsciowo rozwiązać ale szukam rozwiązania bardziej eleganckiego. Niestety w C++ bawię się od niedawna i nie ogarnąłem wszystkiego w dostatecznym stopniu.
Poniżej podaję uproszczony przykład co chcę uzyskać.
Mianowicie, mam dwie klasy, KlasaA i KlasaB. W klasie KlasaA deklaruję zmienną "Nazwa" oraz obiekt typu KlasaB. Zadanie jest takie aby zmienna "Nazwa" była widoczna w KlasaB.
Do czego mi to potrzebne? Np żeby klasaB wiedziała do której klasy A przynależy (np po nazwie klasy A).
Moje rozwiązanie polega przez przekazanie zmiennej w konstruktorze:
class CklasaB
{
public:
char* NazwaB;
CklasaB(char* _nazwa)
{
NazwaB=_nazwa;
};
};
class CklasaA
{
public :
char Nazwa[20];
CklasaB KlasaB;
CklasaA():
KlasaB(Nazwa)
{};
};
Kłopot z tym rozwiazaniem jest taki, że jest więcej pisaniny, trzeba każdorazowo obiekt typu CklasaB dopisywać do listy przy konstruktorze klasy A oraz trzeba przekazywać parametr "Nazwa". Chciałbym tego uniknąć.
Jest jakiś sposób na to, żeby klasaB "widziała" zawartość klasy A w której jest zadeklarowana?