Article View: pl.comp.objects
Article #15655Re: Problemik projektowy
From: 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
Technical Details
Message-ID:
<eh89t2$ego$1@node4.news.atman.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!newsfeed.atman.pl!not-for-mailReferences:
<eh7ecv$g11$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!newsfeed.atman.pl!not-for-mail From: DarekM <darekm@emadar.com> Newsgroups: pl.comp.objects Subject: Re: Problemik projektowy Date: Thu, 19 Oct 2006 18:41:58 +0200 Organization: ATMAN Lines: 38 Message-ID: <eh89t2$ego$1@node4.news.atman.pl> References: <eh7ecv$g11$1@inews.gazeta.pl> NNTP-Posting-Host: 088156100143.stk.vectranet.pl Mime-Version: 1.0 X-Trace: node4.news.atman.pl 1161276131 14872 88.156.100.143 (19 Oct 2006 16:42:11 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Thu, 19 Oct 2006 16:42:11 +0000 (UTC) User-Agent: Thunderbird 1.5.0.7 (Windows/20060909) In-Reply-To: <eh7ecv$g11$1@inews.gazeta.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit