Hirdetés
- Lalikiraly: Kinek milyen setupja van?
- Luck Dragon: Asszociációs játék. :)
- Gurulunk, WAZE?!
- gban: Ingyen kellene, de tegnapra
- GoodSpeed: Egy bihari a Hajdúságban
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- bambano: Bambanő háza tája
- Parci: Milyen mosógépet vegyek?
Új hozzászólás Aktív témák
-
jattila48
aktív tag
válasz
jattila48 #1873 üzenetére
Ha a Derived **-ról Base **-ra castolást megengedné a fordító, akkor meg lehetne csinálni a következőt:
Derived2 szintén származzon Base-ből.Derived *d=new Derived;
Base **b;
b=&d; //ezt a Derived **-ról Base **-ra castolást nem engedi a fordító, de reinterpret_cast-tal ki lehet erőszakolni
*b=new Derived2; //ez simán megy, mert Derived2 *-ról Base *-ra castolEz után a d pointer egy Derived2 típusú objektumra fog mutatni, holott Derived *-ként van deklarálva. Ez nyilván baj lenne, ezért nem engedi meg ezt a fajta cast-ot a fordító. Azonban más a helyzet pointer tömbökre. Ha b nem Base ** típusú, hanem Base *[], akkor a b=&d értékadást eleve nem lehetne megcsinálni, mivel b nem megváltoztatható (hiszen konstans tömb cím, amit a fordító konstans értékként kezel). Tehát a Derived *[]-ról Base *[]-ra való castolás biztonságos, és esetenként kívánatos is lenne, de sajnos a fordítók nem tesznek különbséget ezek között.
Ú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!
- Gamer PC-Számítógép! Csere-Beszámítás! I5 12600K / RTX 3070Ti / 32GB DDR5 / 512 SSD!
- GYÖNYÖRŰ iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3316
- GYÖNYÖRŰ iPhone 11 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3347, 100% Akksi
- Fractal Design Gamer PC - Intel i5-9600k 16GB 1000GB RTX 2060 1 év garancia!
- Samsung Galaxy S23 Ultra / 8RAM 256GB / Gyárifüggetlen / 12 Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő