Hirdetés
- sh4d0w: Én és a számítógép
- Argos: Az vagy, amit megeszel
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- GAI: Retro GPU-k mindörökké: a végleges koncepció, és a szereplők bemutatása
- Viber: ingyen telefonálás a mobilodon
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- Magga: PLEX: multimédia az egész lakásban
- Geri Bátyó: Agglegénykonyha 2 – Főzés: szabályok, vagy szabadság?
Ú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!
- Robotporszívók
- sh4d0w: Én és a számítógép
- Milyen autót vegyek?
- Anglia - élmények, tapasztalatok
- Amlogic S905, S912 processzoros készülékek
- Fujifilm X
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- PROHARDVER! feedback: bugok, problémák, ötletek
- Google Pixel 10 Pro XL – tíz kicsi Pixel
- További aktív témák...
- MacBook Pro 14 Apple M1 Pro 2021 16GB RAM 512GB SSD 3K Retina kijelző 246 ciklus
- Hynix 4GB (2 x 2) 1066 MHz DDR3
- Lenovo ThinkPad X13 Gen 4 i5-1345U 16GB DDR5 512GB SSD FHD+ Garancia 2027.11.10-ig
- iPhone 14 Pro Max 256GB Deep Purple
- Lenovo ThinkPad X13 Gen 2 i5-1145G7 16GB RAM 256GB SSD FHD+ Érintőkijelző 159.990 Ft
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
- GYÖNYÖRŰ iPhone 12 mini 64GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3054, 96% Akkumulátor
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3172
- GYÖNYÖRŰ iPhone 13 Pro 128GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3378, 100% Akkumulátor
- Konzol felvásárlás!! Xbox Series S, Xbox Series X
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest