Hogy és hol tudom azt megadni, hogy egy osztálynak hány "inner class" objektuma lehet?
Egy ősosztályban található egy másik osztály, mint adattag. Ezt az osztály adattagot öröklik a gyerekosztályok is, de nem mindegyikben van ugyanannyi ebből az osztály objektumból. Valamelyikben 2 valamelyikben 3.
Konkrétan:
Karakterek vannak. Van egy karakter ősosztály, melynek vannak gyerekosztályai (pl. warrior, paladin, warlock, shieldbarrier stb). Azért van mindegyik karakternek gyerekosztályai, mert egyedi képességeik vannak, amiket virtuális függvény végez és a spelljeik is egyediek.
Viszont sikerült összegeznem a dolgokat és csináltam egy külön osztályt a támadó spelleknek és egy külön osztályt a védekező spelleknek. Azonban ezeknek is vannak virtuális függvényeik, mert az általános dolgokon kívül (manna igény, sebzés stb) egyedi hatásuk is van.
Nem mindegyik karakternek van ugyanannyi támadó és védekező spellje. Valamelyiknek egyáltalán nincs védekező spellje.
Szóval a karakter ősosztályban van egy támadó spell osztály és egy védekező spell osztály, így a gyerekosztályokban is létre lehet hozni támadó spell objektumot, védekező spell objektumot.
A kérdés, hogy hogy tudom azt megoldani, hogy pl a warriornak 4 támadó spell objektuma van, míg védekező spellje nincs? A paladin 2 támadó és 2 védő spellel bír. Stb.
Ezeket az objektumokat létrehozom a gyekreosztályokban és amikor létrejönnek a karakterek dynamic castolom őket?
A warriornak 4 támadó spell objektumot hozol létre, a védekezőből meg egyet sem.
A spelleket nem kell örökölnie egyiknek karaterosztálynak sem, ugyanúgy létrehozod mint egy intet.
Hadd kérdezzem meg tényleg mindenféle bunkóság nélkül, csak nem te vagy az első ilyen eset:
Hogy jut el valaki úgy az öröklési rendszerekig, hogy nem találkozik olyan fogalommal, hogy osztályszintű változó, lista?
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!