- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Milyen okostelefont vegyek?
- Azonnali navigációs kérdések órája
- Fotók, videók mobillal
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Yettel topik
- Poco F7 – bajnokesélyes
- iPhone topik
- Apple iPhone Air - almacsutka
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
Hirdetés
(használd a CYBSEC25PH kuponkódot további 20 ezer ft kedvezményért!)
Új hozzászólás Aktív témák
-
jattila48
aktív tag
válasz
EQMontoya #3080 üzenetére
Azt hiszem, te ragaszkodsz egy koncepcióhoz, miszerint a különálló funkciókat külön osztályokban kell megvalósítani. Ez nálam is így van. Azonban létre kell hozni egy (és nem több) objektumot, ami ezeket a funkciókat egyben látja el. Tehát itt különbség van a funkciók implementálása (külön osztályokban), és azok használata között. A külön implementált funkciókat (a már említett okok miatt) egyben kell felhasználni. Erre én a származtatást használom, te pedig az egyébként máshol nem használt funkciókat unique_ptr-en keresztül "beinjektálod" a használt objektumba (ami innentől kezdve egyedül létezik, és szintén minden szükséges (egyébként külön implementált) funkciót ellát). Nálam egyik osztály sem tud önállóan létezni, csak a származtatás által összekapcsoltan, ahogy ez is a cél. Nálad a SourceReadFile ogjektum önállóan is tud létezni (sőt példányosítanod is kell), holott ennek semmi értelme, mert úgy is csak a másik osztályban tudod használni.
-
jattila48
aktív tag
válasz
EQMontoya #3080 üzenetére
Persze elég. Amit most példának írtam, abban is így van. Nem egészen erre gondoltam, rosszul fogalmaztam. Ettől függetlenül a fenit megállapításaimat fent tartom. Bonyolultabb, több hibalehetőséget magában rejtő megoldás, mint az enyém.
"Az a bajom az egybe pakolt megoldással, amiért nem is akar sézpen működni: teljesen különböző funkciókat szeretnénk bepakolni egy logikai csoportba."
A teljesen különböző funkciókat teljesen külön is választom: a blob feldolgozás az ősosztályba, a forrás kezelés/beolvasás a leszármazott osztályba. Persze amikor már példányosítom a leszármazott osztályt, akkor ezek a funkciók egy objektumban működnek, mint ahogy ez is a cél. (ld, ugyanaz a hatókör, a blob-ot vissza kell tudni írni, egységes RAII). A te megoldásodban sem fog külön önállóan létezni a SourceReadFile objektum (legalábbis nem sokáig, mert bele teszed egy unique_ptr-be), hanem rögtön "beinjektálod" a BlobProcess objektumba. Innentől kezdve, pedig ugyanúgy a BlobProcess objektum fogja ellátni az összes feladatot (blob feldolgozás, forrásba visszaírás). A SourceReadFile objektum önálló létének nincs is értelme, sőt a legjobb, ha minél előbb megszabadulunk tőle (RAII miatt), ezért legjobb, ha önállóan létre sem hozzuk. Persze a tényleg szükséges objektum leszármazott részeként marad.
Egyébként az "egybepakolt" megoldásom szépen működik. Miből gondolod, hogy nem akar? A te megoldásodat így gondoltad, ahogy a példában írtam?
Ú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!
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Jövedelem
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Borderlands 4
- Mégis marad a Windows 10 ingyenes frissítése
- Futás, futópályák
- Fejhallgató erősítő és DAC topik
- Battlefield 6
- Vezetékes FÜLhallgatók
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- További aktív témák...
- BESZÁMÍTÁS! Gigabyte B650 R7 7700 32GB DDR5 1TB SSD RTX 4070 Ti 12GB Asus TUF Gaming GT 501 750W
- BESZÁMÍTÁS! MSI B450 R5 5600X 16GB DDR4 1TB SSD RTX 2080 8GB NZXT S340 CHIEFTEC 700W
- BESZÁMÍTÁS! Asus Z790 i9 14900K 32GB DDR4 1TB SSD RTX 2080Ti 11GB Montech Air 1000 Lite 700W
- BESZÁMÍTÁS! ASUS ROG Z690 i9 14900K 32GB DDR4 1TB SSD RTX 3090 OC 24GB be quiet Pure Base 500 850W
- Gamer PC - i5 9600k, RTX 2060 és 16gb RAM + GARANCIA
- iKing.Hu-Nothing Phone 3a Pro Grey Glyph stílus, 3 optikai zoom 12/256 GB -3 hónap garancia
- HPE Apollo 4200 Gen9 2U rack szerver, 1x E5-2620v4, 64GB RAM, 24x3.5" 2U-ban! ÁFA-s számla, garancia
- Apple MacBook Air M2,8/256GB,Dobozával,12 hónap garanciával
- GYÖNYÖRŰ iPhone 12 mini 128GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3395, 94% Akkumulátor
- AKCIÓ! Apple Macbook Pro 16" 2019 i9 9980HK 64GB DDR4 512GB SSD Radeon Pro 5500M garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest