Thread View: pl.comp.objects
2 messages
2 total messages
Started by chmurek
Thu, 19 Oct 2006 08:52
Problemik projektowy
Author: chmurek
Date: Thu, 19 Oct 2006 08:52
Date: Thu, 19 Oct 2006 08:52
34 lines
2294 bytes
2294 bytes
Witam! Przyszło mi stanąć w szranki z problemem z którym nie jestem w stanie poradzić sobie sam więc zwracam się z prośbą o pomoc. Mam następującą hierarchie klas : Abstrakcyjna klasa base stanowi baze dla wszystkich późniejszych. Następnie klasy : IDrawable ICollidable oraz IProccesable które dziedziczą od base. Z trzech powyższych tworze sobie obiekty z zaznaczeniem że obiekty mogą dziedziczyć ze wszystkich jak i tylko z jednej klasy. Nastepnie tworze klase pt. ObjectManager która potrafi przechować oraz usunąć obiekty. I Tu sie zaczyna problem. Mam bowiem vektor wskaznikow na base oraz trzy vektory wskaznikow na IDrawable, ICollidable oraz IProccesable. Rejestrując obiekt w ObjectManagerze wrzucam go najpierw do wektora base'ów a następnie dynamicznie rzutuje na każdy z pozostałych. Jednak obiekt moze dziedziczyć na przykład tylko z IDrawable, co sie stanie więc jesli bede starał sie zapisać taki obiekt do wektora ICollidable ? Jak można to rozwiązać w inny sposób ? Kolejna część problemu pojawia się kiedy chce stworzyć kontroler dla tych trzech dziedziczonych klas. Każdy kontroler dostaje wektor który kontroluje. Pojawia się jednak sytuacja w której musze usunąć obiekt z wektora. To nie jest problemem jednak usunięcie obiektu z jednego wektora implikuje konieczność ewentualnego usunięcia z pozostałych wektorów. W związku z tym proszę o pomoc. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Problemik projektowy
Author: DarekM
Date: Thu, 19 Oct 2006 16:41
Date: Thu, 19 Oct 2006 16:41
38 lines
2666 bytes
2666 bytes
chmurek napisał(a): > Witam! > > Przyszło mi stanąć w szranki z problemem z którym nie jestem w stanie poradzić > sobie sam więc zwracam się z prośbą o pomoc. > Mam następującą hierarchie klas : > > Abstrakcyjna klasa base stanowi baze dla wszystkich późniejszych. > Następnie klasy : > IDrawable > ICollidable > oraz IProccesable > które dziedziczą od base. > > Z trzech powyższych tworze sobie obiekty z zaznaczeniem że obiekty mogą > dziedziczyć ze wszystkich jak i tylko z jednej klasy. > Nastepnie tworze klase pt. ObjectManager która potrafi przechować oraz usunąć > obiekty. I Tu sie zaczyna problem. Mam bowiem vektor wskaznikow na base oraz > trzy vektory wskaznikow na IDrawable, ICollidable oraz IProccesable. > Rejestrując obiekt w ObjectManagerze wrzucam go najpierw do wektora base'ów a > następnie dynamicznie rzutuje na każdy z pozostałych. Jednak obiekt moze > dziedziczyć na przykład tylko z IDrawable, co sie stanie więc jesli bede > starał sie zapisać taki obiekt do wektora ICollidable ? Jak można to rozwiązać > w inny sposób ? Przypisanie obiektu do wektora powinno skutkować odpowiednią akcją na samym obiekcie: sprawdzenie czy obiekt posiada odpowiednie właściwości i zapamiętanie gdzie został przypisany. Jeżeli dopisanie niemożliwe rzuć wyjątek albo inaczej przekaż tą informację. > Kolejna część problemu pojawia się kiedy chce stworzyć kontroler dla tych > trzech dziedziczonych klas. Każdy kontroler dostaje wektor który kontroluje. > Pojawia się jednak sytuacja w której musze usunąć obiekt z wektora. To nie > jest problemem jednak usunięcie obiektu z jednego wektora implikuje > konieczność ewentualnego usunięcia z pozostałych wektorów. Jak zapamiętasz do którego obiektu przypisałeś to teraz się wypisz Darek
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads