Polimorfizm i szblony w grze
Ostatnio zmodyfikowano 2013-06-10 20:48
daniel0801 Temat założony przez niniejszego użytkownika |
Polimorfizm i szblony w grze » 2013-06-08 12:25:35 Witam!
Piszę grę i proszę o sugestie w sprawie konstrukcji które zamierzam użyć.
Otóż jest to gra planszowa zawierająca pole+ pole- pole_neutral.
Zadeklarowane mam klasy pole_plus pole_minus pole_neutral które dziedziczą po polu, ponieważ każde pole musi mieć jakieś współrzędne.
Wszystkie pola planszy to ich tablica z określoną sztywnie wartością.
Muszę na np. 50 pól generować 3plusowe i 3minusowe reszta to neutralne obiekty.
Jak wykorzystać do tego szablony żeby to miało sens?
bo np. chciałbym:
pole* pole[1] = new pole_plus; pole* pole[2] = new pole_neutral; pole* pole[3] = new pole_neutral; pole* pole[4] = new pole_minus; itd.
W plansza.h będę generował odpowiednie nr pól + jaki i -.
Jak to skonstruować by to sensownie działało?
Z góry dzięki! Pozdrawiam
|
|
jsc |
» 2013-06-08 13:18:56 Można zrobić pole identyfikatora typu podrzędnego i robić odpowiednie rzutowania przy wykorzystaniu. |
|
daniel0801 Temat założony przez niniejszego użytkownika |
» 2013-06-08 14:42:22 Mógłbyś poczęstować jakimś kodem czy pseudokodem bo ogólnie chciałbym to dobrze z czaić. Bo w ogóle nie mam pojęcia jak się za szablony zabrać. |
|
unimator |
» 2013-06-08 19:31:21 Z tego co przeczytałem wydaje mi się, że klasy + dziedziczenie + polimorfizm w zupełności Ci wystarczą. Nie do końca rozumiem co miałeś na myśli pisząc taki fragment kodu ale będę strzelać: pole* pole[1] = new pole_plus; pole* pole[2] = new pole_neutral; pole* pole[3] = new pole_neutral; pole* pole[4] = new pole_minus;
|
pole * pPole[ 50 ];
pPole[ 1 ] = new pole_neutral; pPole[ 2 ] = new pole_plus;
Wszystko zależy jednak od tego co potem z tym będziesz :P. |
|
pekfos |
» 2013-06-08 19:37:57 Bo w ogóle nie mam pojęcia jak się za szablony zabrać. |
A po co tu szablony? Muszę na np. 50 pól generować 3plusowe i 3minusowe reszta to neutralne obiekty. |
I w czym problem? |
|
daniel0801 Temat założony przez niniejszego użytkownika |
» 2013-06-09 00:00:04 Bo mam taki warunek że muszą być w tyn szablony. Jak wykorzystać szablon metody tak aby tworzyć obiekt pole+, pole-, pole_neutral? |
|
unimator |
» 2013-06-09 11:04:59 Może coś takiego: template < typename Typ_Pola > class Pole { Typ_Pola oPole; }
I potem poszczególne pola tworzyłbyś mniej więcej tak: void * pPole[ 50 ];
pPole[ 1 ] = new Pole < Pole_Neutral >; pPole[ 2 ] = new Pole < Pole_Neutral >; pPole[ 3 ] = new Pole < Pole_Plus >;
|
|
daniel0801 Temat założony przez niniejszego użytkownika |
» 2013-06-09 22:56:48 Klasy pole+ pole- pole neutral mogą dziedziczyć po polu i ma sens wykorzystać w tym polimorfizm po to by dla każdego obiektu zaimplementować metody do wypisania przykładowo? Wasze komentarze są mi bardzo pomocne. |
|
« 1 » 2 |