Potrzebuję pomocy z czymś co się nazywa Forward Declarations (deklaracje wyprzedzające/zapowiadające?). Znalazłem w sieci taki przykład: http://www.devx.com/tips/Tip/12583
Teoretycznie wygląda to ładnie, ale nie da się zastosować tak prosto w moim przypadku (a może się mylę). Poniżej fragment przykładowego kodu:
class A
{
int x;
vector <B> wektor;
public:
int pobierzX () const {return x}
} A
class B
{
int y
public:
void metoda (int z)
{
if (A.pobierzX() == z)
y = z;
else
y = 0;
}
};
Jak widać klasa B wymaga istnienia obiektu klasy A, a jedną ze składowych klasy A jest wektor obiektów klasy B. Z tego co wiem, to można przed klasą A dać deklarację zapowiadającą (wyprzedzającą?) klasy B, a w wektorze trzymać nie obiekty, a wskaźniki do niej. Jeśli czegoś nie pokręciłem, to powinno to działać. Pytanie brzmi czy da się to jakoś rozwiązać bez przechodzenia na wskaźniki?