Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- Pitterix: Gyógytorna
- droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
- Brogyi: CTEK akkumulátor töltő és másolatai
- sziku69: Fűzzük össze a szavakat :)
- Gép1: Renault Kangoo vizhűtő ventilátor fokozatok
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- sziku69: Szólánc.
- GoodSpeed: Egy bihari a Hajdúságban
Új hozzászólás Aktív témák
-
jattila48
aktív tag
válasz
dobragab
#3057
üzenetére
Akkor egy kicsit konkrétabban: B egy olyan osztály, ami bináris adatot tartalmazó memória területet dolgoz fel. A memória terület pointerét, és méretét kapja meg az init tfv.-ből. Van nem default ctor-a, amiben egyéb paramétereket vár. A leszármazott D osztály valahonnan (pl. file, registry, stb.) beolvassa a bináris adatot, lefoglalja a megfelelő memória területet, és ennek a címét és méretét a B::init-nek argumentumként átadva B::init meghívásával (a D ctor-ában) teljesen inicializálja B-t. A D ctorának fájl név a paramétere, ha fájlból olvas, vagy registry kulcs, ha registryből, stb. A probléma az, hogy ha nem az init-et hívom, hanem a B ctorának akarnám átadni a memória területet, akkor az adatot előbb kellene beolvasni, mint ahogy a B ctora meghívódik. Azonban az adat beolvasást mindenképpen a D ctor-ában szeretném elvégezni, nem pedig kívül (pl. RAII miatt). Ha a B ctor-ának az egyéb paraméterek mellett a memória pointer és a méret is paramétere lenne, akkor ezeket valahogy az inicializáló listában kéne előállítani (akár D statikus fv.-ei segítségével). Ehelyett én azt mondom, hogy mivel B-t nem lehet példányosítani, a D pedig nem tekinthető teljesen megkonstruáltnak ha nem hívja meg ctor-ából az init-et, talán elfogadható a B kétfázisú inicializálása. Ez koncepcionálisan nem mond ellent annak, hogy ne hozzunk létre félig konstruált objektumot, mivel ha D a konstruktorában nem hívja meg az init-et, akkor maga a D tekinthető félig konstruáltnak.
Ú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!
- Mesterséges intelligencia topik
- Windows 11
- Formula-1
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- DUNE médialejátszók topicja
- Miskolc és környéke adok-veszek-beszélgetek
- „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
- Eredeti játékok OFF topik
- World of Tanks - MMO
- CASIO órák kedvelők topicja!
- További aktív témák...
- Lenovo ThinkPad L480 i5-7300u / 14" FHD IPS / 8GB / 256GB m.2 SSD / jó akku /
- PRÉMIUM WHITE PC - 9800X3D / 9070 XT Hellhound Spectral White OC / ASRock X670E Taichi Carrara (L)
- Apple iPhone 15 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Asus ROG Strix G16 Notebook! i9-14900HX / RTX 4060 / 16GB DDR5 / 1TB NVMe! BeszámítOK
- MSI Katana GF76 - 17.3"FHD 144Hz - i5-11400H - 8GB - 512GB - Win11 - RTX 3050 Ti - MAGYAR
- 2db UK billes (146 / 147) - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4090
- Samsung Galaxy A16 / 4/128GB / Kártyafüggetlen / 12Hó Ganacia / BONTATLAN NULL Perces!
- HIBÁTLAN iPhone 13 Pro 128GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3563,100% Akkumulátor
- Samsung Galaxy A21s 32GB, Kártyafüggetlen, 1 Év Garanciával
- 0perces! Samsung Galaxy Book5 Pro 360 2in1 Core Ultra 7 256V 16GB 1TB 16" WQXGA+ AMOLED TOUCH 1évgar
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

