Hirdetés
- Brogyi: CTEK akkumulátor töltő és másolatai
- Luck Dragon: Asszociációs játék. :)
- Parci: Milyen mosógépet vegyek?
- sziku69: Fűzzük össze a szavakat :)
- Gurulunk, WAZE?!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- GoodSpeed: Egy bihari a Hajdúságban
- Magga: PLEX: multimédia az egész lakásban
- laskr99: DFI és DFI Lanparty gyűjteményem
- bambano: Bambanő háza tája
Új hozzászólás Aktív témák
-
modder
aktív tag
válasz
Blaise7 #1146 üzenetére
Helló, természetesen igen, de nem pontosan abban a formában, ahogy leírtad.
Heterogén kollekciónak hívják, és a lényeg, hogy bármilyen osztály objektumait beleteheted, amik a kollekció típusának leszármazottai.
Legyen
class Os {};
class Gyerek: public Os {};
Os* tomb[10];Ahogy látod Os* (azaz Os-re mutato pointer) típusokat tárolok a tombben, és ha hozzá akarok adni egy elemet, akkor a címét kell hozzáadni:
Os[0] = new Gyerek;
vagyGyerek gyerek;
Os[1] = &gyerek;Ez az egyetlen módja, hogy egy tömbben gyerek osztályokat is tudj tárolni. Az oka az, hogy a két osztály memóriatérképe eltérő. Amíg Os-ben lehet pl. 1db int, addig Gyerekben legyen 10db float, plusz az Os 1db intje.
Ha Os tipusu tombot inicializálsz, akkor a memóriában (a te esetedben) 10db Os osztály méretű hely foglalódna a memóriában, ami a fentiekből adódóan 10 * 1db int-et jelentene.
Erre a helyre nyilván nem férne bele a 10 * (10db float + 1db int), ami a gyerek osztály mérete.Az egyetlen módszer, hogy pointer tömböt inicializálsz, mert egy pointer egy int méretű, és bármilyen memóriacímre mutathat.
Remélem érthető voltam, keress rá a C++ heterogén kollekcióra.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Brogyi: CTEK akkumulátor töltő és másolatai
- Luck Dragon: Asszociációs játék. :)
- Kormányok / autós szimulátorok topikja
- No Rest for the Wicked
- 175 fotó, amit a Vivo X300 és X300 Pro kameráival készítettem
- Gitáros topic
- Abarth, Alfa Romeo, Fiat, Lancia topik
- Otthoni hálózat és internet megosztás
- AMD APU (AM4 és AM5) topik
- Synology NAS
- További aktív témák...
- BONTATLAN Új iPhone 17 PRO MAX Silver - Ezüst 256-512GGB Független 1év Apple G Azonnal átvehető.Deák
- MUNKAGÉP Dell Precision 7520 / 16gb ram / 512gb SSD / Nvidia 4gb dedikált / MAGYAR Bill
- Gamer pc eladó! 2070 Super/i5-10600KF/16GB RAM/Be Quiet
- Ryzen 7 5800X / 2x 500GB SSD / 32GB DDR4 3000MHz / RX 9060 XT + Előretelepített Eredeti Win11 PRO
- új iPhone 17 Pro 512GB cosmic orange kozmosznarancs független Apple 1 év garancia
- 13-14" Új és használt laptopok , üzletitől a gamerig , kedvező áron. Garanciával !
- Bomba Ár! Lenovo ThinkPad L14 G2i - i5-1135G7 I 16GB I 256SSD I 14" FHD I Cam I W11 I Gar
- ÁRGARANCIA!Épített KomPhone i5 14600KF 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- billentyűzetek - kiárusítás - Logitech, Corsair, ASUS
- AKCIÓ! Apple Pro Display XDR 32 6K Nanotexturált üveg monitor garanciával hibátlan működéssel
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest