Hirdetés
- Pánik a memóriapiacon
- Milyen belső merevlemezt vegyek?
- AMD Navi Radeon™ RX 9xxx sorozat
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Melyik tápegységet vegyem?
- 3D nyomtatás
- Amlogic S905, S912 processzoros készülékek
- LG LCD és LED TV-k
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Canon MILC: EOS R és M topik
Új hozzászólás Aktív témák
-
3man
csendes tag
Ha mar igy kiveseztetek a tomboket, erdemes megemliteni, hogy a legeldugodtabb bugokat a tombok tulindexelesevel lehet krealni.
Ugyanis az tortenik, hogy ha letrehozok egy int tomb[100] meretu tombot, es utanna beleirok mondjuk a tomb[234]=1 elemebe ezzel a sorral, akkor az a memoriaban utanna levo valamelyik valtozoba fog belebarmolni. Ez azutan vagy lathato hibat okoz, vagy lopakodo uzemmodban egyszercsak ertelmetlen dolgokat fog a program csinalni teljesen mashol, olyan helyen, aminek semmi koze a tomb[] hoz.
Erre mar jol kezelheto array osztalyok vannak, erdemes szetnezni es valogatni ezek kozt. A legegyszerubb, ha az ember egy sajat array osztalyt hoz letre, es minden tipusu tombot ezzel definial.
Ebben letre lehet hozni egy []-operatort, ahol az indexelesnel ellenorizni lehet, hogy az index a tomb merete alatt van-e. A tomb letrehozasanal pedig el lehet tarolni a meretet. Ezzel az apro dologgal rengeteg fejfajastol lehet megszabadulni.Ehhez kapcsolodik a memoria kezeles. Ha az ember meg kezdo, nem mindig tudja ugy felepiteni a programot, hogy minden lefoglalt memoria mindig jo helyen es jo idoben szabaduljon fel.
Minden new utasitast erdemes sajatra cserelni. Ez akar egy egyszeru makroval is megteheto. Egy mutato-listat letrehozva le kell tarolni minden lefoglalt cimet.
Amikor uj cimet hozok letre, erdemes vegignezni a listat, hogy nem esik bele valamelyik mar letrehozott memoria reszbe az uj kezdocim. Igy kiszurheto olyan rejtett memoria hiba, ami akkor keletkezik ha lemasolok egy pointert, de az eredetit felszabaditom. Ez kezdo hiba, de barki tevedhet. A program viszont eszre fogja venni a tevedest. Termeszetesen a delete-nel a a listabol torolni kell a mutatot.
Ezt a modszert kiegeszitve azzal, hogy minden sajat new hivasnak nevet adok, a nem felszabaditott memoriat barmikor ki lehet listazni.
Nevadas helyett lehet hasznalni a __line__ __file__ __function__ makrokat, amikkel a felszabaditatlanul maradt new utasitas pontos helyet vissza lehet kovetni.Ezzel az ket egyszeru modszerrel szinte az osszes memoria bug kiirthato egy akarmilyen bonyolult programbol.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Epic Store Ünnepi Ajándékozás - 14. nap: Chivalry 2
- Luck Dragon: Asszociációs játék. :)
- Pánik a memóriapiacon
- Székesfehérvár és környéke adok-veszek-beszélgetek
- Víz- gáz- és fűtésszerelés
- Búvárkodás
- Arc Raiders
- Milyen belső merevlemezt vegyek?
- AMD Navi Radeon™ RX 9xxx sorozat
- Lexus, Toyota topik
- További aktív témák...
- Saeco Talea Giro Automata kávégép 6 hónap Garancia Beszámítás Házhozszállítás
- Lian Li LCD-s 360mm-es vízhűtés akciós áron eladó!
- GYÖNYÖRŰ iPhone 13 Pro 256GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3074
- RAPOO 7100P 1000DPI optikai rádiós 5GHz egér
- Samsung Galaxy A34 5G / 6/128GB / Kártyafüggetlen / 12Hó garancia
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


