- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Nvidia GPU-k jövője - amit tudni vélünk
- Milyen billentyűzetet vegyek?
- Milyen TV-t vegyek?
- TCL LCD és LED TV-k
- Androidos tablet topic
- Épített vízhűtés (nem kompakt) topic
- Melyik tápegységet vegyem?
- Samsung LCD és LED TV-k
- AMD Navi Radeon™ RX 6xxx sorozat
Új hozzászólás Aktív témák
-
WonderCSabo
félisten
válasz
Dave-11 #1577 üzenetére
Egyébként van valamilyen szisztéma, ami alapján a címekbe rakja az értékeket?
Sajnos ez egy nagyon bonyolult kérdés. Az alap koncepció az, new operátor hívásakor keres egy akkora összefüggő, üres területet a heap-en, amitbe belefér a változó, és ennek a területnek a címe kerül bele a pointeredbe. Hogy milyen szisztéma alapján keresi a területet, az egyrészt rendszerenként is változó, másrészt az adott szituációtól is függ. Ennél sokkal többet nem tudok erről a dologról, mert nem igazán volt szükséges utánajárnom eddig. De ha további kérdéseid vannak, talán a hozzáértőbbek tudnak válaszolni rá.
-
Dave-11
tag
válasz
WonderCSabo #1576 üzenetére
Értem, akkor ez engem, mint kezdőt még nem érint, csak így beletekintés szintjén jó volt, később biztos hasznos lesz
Egyébként van valamilyen szisztéma, ami alapján a címekbe rakja az értékeket? -
WonderCSabo
félisten
válasz
Dave-11 #1575 üzenetére
Nem, nem erre való. A memóriában valóban egy címen van a változó értéke, de ehhez szükségtelen pointereket használni. A címet egyébként is le lehet kérni az & operátorral.
A pointerek azért jók, mert segítségével láncolt adatszerkezeteket tudunk létrehozni. Pl. nem kell a tömbben tárolni a bazinagy képeket, elég csak a rá mutató pointert, és emiatt a tömb sokkal jobban kezelhető, vagy létrehozhatsz láncolt listát, fákat, stb.
A másik dolog, amit Te is írtál, hogy a pointerek segítségével tudunk dinamikusan lefoglalni memóriaterületet, és ezt bármikor fel is szabadíthatjuk. Ettől a program nem fog feltétlenül gyorsabban futni, viszont a memóriahasználata nyilvánvalóan csökkenni fog. Ellenkező esetben a sima automatikusan lefoglalt változók esetén a változó csak az adott blokk lefutása végén szabadul fel.Ezen kívül C++ - ban még a pointereken keresztül lehet megvalósítani a polimorfizmust és a dinamikus kötést, és még ezer dolog van, hogy miért is jók a pointerek.
-
Dave-11
tag
Kicsit jobban utánnajártam a pointereknek, megnéztem két videót ( videó1 és videó2 ), és hát kicsit segített letisztázni pár dolgot, de még mindig van pár dolog, amiben nem vagyok biztos. Tehát:
1. ha létrehozunk egy változót, és annak adunk egy értéket, akkor az az érték eltárolódik a memóriánk egyik címében. És valahányszor használja a programunk a változót, az értékét az adott memóriacímről nyeri ki? És erre jó a pointer, hogy megkapjuk az adott memóriacímet?
2. ha egy változó feleslegessé válik, vagy ha változik az értéke, akkor a korábbi memóriacímről törölni tudjuk a pointerünk segítségével, és egyszerűen új értéket adunk neki, ami már egy más címen lesz? És ezzel kerüljük el, hogy felesleges dolgok megmaradjanak, és a program kevesebb memória használatával, valószínűleg gyorsabban fusson?
Ú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!
- Képregény topik
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- BestBuy topik
- Battlefield 6
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- Windows 11
- Nvidia GPU-k jövője - amit tudni vélünk
- Viccrovat
- Greenwashing és zöld sivatag miatt támadják az Apple Watch-ot
- PlayStation 5
- További aktív témák...
- BESZÁMÍTÁS! ASUS B550 Vision D B550 chipset alaplap garanciával hibátlan működéssel
- Azonnali készpénzes félkonfig / félgép felvásárlás személyesen / csomagküldéssel korrekt áron
- Jo Nesbo: LEOPÁRD (nem olvasott)
- Azonnali készpénzes nVidia RTX 3000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
- GYÖNYÖRŰ iPhone 11 128GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3126, 98% Akkumulátor
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest