- VoLTE/VoWiFi
- Bemutatkozott a Poco X7 és X7 Pro
- Milyen okostelefont vegyek?
- Xiaomi 14T Pro - teljes a család?
- Honor Magic6 Pro - kör közepén számok
- Android alkalmazások - szoftver kibeszélő topik
- Huawei Mate X6 - keleti oldal, nyugati oldal
- Honor 400 Pro - gép a képben
- Samsung Galaxy S24 FE - később
- Motorola Edge 50 Neo - az egyensúly gyengesége
Új hozzászólás Aktív témák
-
-
Chris_T
tag
Újabb problémába futottam:
Objektum attrib.-jait akarom fájlba kiíratni, és ahogy a beolvasáskor a sor elején lévő betű határozza meg hogy az adott sor milyen objektum tulajdonságait tartalmazza (ez alapján lesz létrehozva)
Fáljba íratáskor ugyanigy a sor elejére lenne irva hogy milyen tiupusú (t, k, h)
Találtam is rá egy megoldást:
cout << typeid(alakzatok[0]).name()
De sajnos az általános Alakzat-tömb miatt mindenre Alakzatot ir,
Egy új adattag bevezetésére gondoltam ami minden objektumnál tárolná a tipusát, tudna esetleg valaki egy ötletet mondani ennek elkerülésére ? (valamilyen módszerre gondoltam ami a typeid-t használja fel, de az azonos tömbpointerek miatt ez nem jó)
-
Chris_T
tag
Köszönöm a segítséget
Most hogy nezem, nem is ertem p-t miert Alakzatnak valasztottam
kiegészítve castolással, most már müködik igy isTeglalap *p;
p = (Teglalap*)alakzatok[0];
cout << "a teglalap A oldala: " << p->getA() << endl;Illetve a következő forma, amit egy másik fórumon találtam, az is müködik
cout << "oldalak: " << static_cast<Teglalap *>(alakzatok[0])->getA() << " es " << static_cast<Teglalap *>(alakzatok[0])->getB() << endl;
Ami miatt mérgelődök hogy, a sok kombincáioban, amit probáltam, a static_cast is benne volt, csak ott valami más volt a gond (de egyébként jó lett volna ezek szerint)
-
Chris_T
tag
Üdv.
Gyerekosztályra való castolásban kellene segítség, már sokféleképp próbáltam, sehogyse müködik:
A két osztály:
ösosztály: Alakzat ( int x, y tagok es getX() getY() fv-k ) //x,y: középpont
gyerekosztály: Teglalap ( int a, b tagok es getA() getB() fv-k) //a,b: oldalaklétre van hozva egy ösosztály tömb, amibe kerülhet Teglalap, Kor, Haromszog is:
Alakzat* alakzatok[20];utána beleteszek egy téglalapot:
alakzatok[i] = new Teglalap(0, 0, 10, 20);de a téglalap metódusait már nem tudom meghívni a tömbből:
Alakzat *p;
p = dynamic_cast<Teglalap*>(alakzatok[0]);
cout << "a teglalap a oldala: " << p->getA() << endl;'class Alakzat' has no member named 'getA'
(Próbálkoztam már többek közt azzal is hogy eleve Alakzat osztályra való konvertálással teszem be a tömbbe, illetve a staic, dynamic cast se segített)
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Cyberpunk 2077
- Kezdő fotósok digitális fényképei
- Milyen processzort vegyek?
- VoLTE/VoWiFi
- Kertészet, mezőgazdaság topik
- Milyen monitort vegyek?
- Vezetékes FÜLhallgatók
- Mit tehetsz jogilag, ha átvertek, megkárosítottak a Hardveraprón?
- Tőzsde és gazdaság
- További aktív témák...
- Bomba ár! Lenovo ThinkPad X395 - AMD Ryzen PRO 5 I 8GB I 512GB SSD I 13,3" FHD I Cam I W11 I Gari!
- Samsung Galaxy S23PLUS 256GB Kártyafüggetlen 1Év Garanciával
- Motorola Razr 40 Ultra Glacier Blue 18/256 GB Használt, szép állapotban 3 hónap garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X3D 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! Apple Watch SE/Apple Watch SE 2 (2022)
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest