Dwie klasy w osobnych plikach wykorzystujące siebie na wzajem.
Ostatnio zmodyfikowano 2023-08-07 16:46
Gikonu Temat założony przez niniejszego użytkownika |
Dwie klasy w osobnych plikach wykorzystujące siebie na wzajem. » 2023-08-07 15:08:50 Ma problem mianowicie chciał bym stworzyć dwie klasy w osobnych plikach które mają obiekt drugiej klasy wewnątrz siebie. Klasa A ma obiekt klasy B a klasa B obiekt klasy A. Tyle że klasa A to jeden plik a klasa B to drugi plik i nie wiem jak te pliki właściwie dołączy do siebie. Spróbowałem w pliku .cpp użyć instrukcji #include a w .h "class (nazwa klasy);" bo widziałem takie rozwiązanie w czyiś projektach ale nie działa. |
|
pekfos |
» 2023-08-07 16:46:44 Nie da się czegoś takiego zrobić. Gdyby się dało, obiekt takiej klasy miałby nieskończenie duży rozmiar. Może masz na myśli że obiekt klasy A ma w sobie wskaźnik na obiekt klasy B, lub odwrotnie? Do utworzenia wskaźnika wystarczy deklaracja klasy: Zdefiniuj klasy w plikach nagłówkowych i dołączaj jeden w drugim tylko gdy potrzebujesz faktycznego obiektu klasy. W przypadku wskaźnika wystarczy deklaracja klasy i w tym wypadku będzie potrzebna, bo cykliczne dołączanie nagłówków między sobą też jest błędne. W pliku CPP dołącz oba nagłówki by obie klasy były znane jako kompletne typy. Razem by to wyglądało tak: class B;
class A { B * b; };
class B { A a; A * a2; }; |
|
« 1 » |