Hirdetés
- Xiaomi 11 Lite 5G NE (lisa)
- Akciófigyelő: Megnyílt a Xiaomi hivatalos magyar webáruháza
- Huawei Watch GT 4 - kerek karék
- Fotók, videók mobillal
- Dobja a SIM foglalatot az iPhone Európában?
- Milyen okostelefont vegyek?
- Megjött a jubileumi Pixel széria
- iPhone topik
- Nincs megállás akkuméretben
- Samsung Galaxy Watch7 - kötelező kör
Új hozzászólás Aktív témák
-
Vico87
tag
válasz
jattila48 #1878 üzenetére
Az egyik megoldás, ha Base** példányt vár a függvényed és létrehozáskor is Base**-ba pakolod a Derived példányaidat. Ez akkor jó, ha ki akarod használni a polimorfizmust és a kollekciód heterogén, azaz statikus típusa Base* tömb, de az egyes elemek dinamikus típusa elemenként eltérő.
Ha biztosan csak Derived példányokat akarsz átadni és ez nem fog változni, akkor minek Base* tömb? A megoldás, hogy a függvényed Derived* tömböt kapjon.
Megjegyzés: a fordító számára nincs különbség Base** és Base*[] között. Az, hogy számodra szemantikailag a két dolog eltérő, az jogos, de a szándékodat (hogy ez most egy Base* tömb, vagy pedig egy Base példányra mutató mutatónak mutatója) a tömb technikai megvalósítása (memóriaterületre pointer) miatt nem tudja megvalósítani a fordító. Csak akkor tudná kitalálni a pontos konverziót, ha pontosan tudná, hogy a Base* tömbödben mennyi példány van, de ezt nem tudhatja, mivel ez futási időben derül csak ki és függvényhívásonként nem konstans.
Ez a konverzió olyan esetben veszélyes, amilyet írtál: egyik leszármazottból konvertálás másik ágon lévőbe, például a tömbödben nem csak Derived*-ok vannak, hanem Derived2*-ok is.
Ú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!
- Újszerű Apple MacBook Air 13.6" - M2, 16GB/256GB - 15 ciklus - 100% akku(MC7W4MG/A) Csillagfény -HUN
- Asztali PC , R7 5700X , RTX 3070 Ti , 32GB RAM , 512GB NVME , 2TB HDD
- Asztali PC , R7 8700F , RTX 3070 Ti , 32GB DDR5 , 512GB NVME , 1TB HDD
- AMD Ryzen 7 7800X3D - Új, 3 év garancia - Eladó!
- Dell Alienware AW3225QF (31,6", OLED, 3840x2160, 240Hz, 1700R, FreeSync, G-SYNC)
- Magic Trackpad legújabb fajta, lightning csatlakozóval
- Készpénzes / Utalásos Videokártya és Hardver felvásárlás! Személyesen vagy Postával!
- Bomba ár! HP EliteBook 735 G6 - Ryzen PRO 5 I 8GB I 256GB SSD I 13,3" FHD I Cam I W10 I Gari!
- Külföldi csomagszállítás Packeta csomagpontokon keresztül!
- Gamer PC-Számítógép! Csere-Beszámítás! R5 1600X / GTX 1080 8GB / 32GB DDR4 / 256SSD + 2TB HDD
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest