Hirdetés
- Még tavasszal befut az Xbox mód a Windows 11-hez
- Házimozi belépő szinten
- HTPC (házimozi PC) topik
- Először beszélt bővebben az új Xbox konzolról a Microsoft
- OLED monitor topic
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Valami baja van a tápomnak
- Amlogic S905, S912 processzoros készülékek
- Nem indul és mi a baja a gépemnek topik
- AMD Navi Radeon™ RX 9xxx sorozat
Új hozzászólás Aktív témák
-
Szirty
őstag
válasz
mcwizard
#4110
üzenetére
Üdv mcwizard!
A lokális változók a hívás végén nem törlődnek. A rendszer nem törli őket szándékosan. Ám a tartalmukat nem szabad figyelembe venni a blokkon belül azelőtt, hogy értéket adtunk volna neki.
Az ok rendkívül egyszerű: A lokális változók tartalmát más blokkok lokális változói felülírhatják ha használnak lokális változót illetve ha írják azokat. Így minden blokkban minden lokális változó tartalma lényegében határozatlan, memória szemét van benne. Egyszerűen azért, mert minden blokk ugyanazt a stack-et (memória területet) használja a saját lokális változói tárolására.
Ezért ha csak egyetlen egy blokkod van ami ír egy lokális változót, de a többi blokkban is létrehozol változókat amik így ugyanarra a címre kerülnek, ám azokat nem írod csak olvasod, akkor azt fogod tapasztalni hogy amikor az író blokk megváltoztatja a lokális változó értékét, akkor az a többi blokkban is megváltozik. Illetve az író blokk elején is az az érték van benne amit utoljára beleír.
Ha azonban nem "steril", hanem olyan programban vizsgálnád meg ugyanezt a jelenséget ahol különböző blokkok különböző célra intenzíven használnak különböző belső változókat a saját céljukra (a gyakorlatban minden program ilyen lényegében) akkor gyökeresen mást tapasztalnál.
Ha tehát arra hagyatkozol amit most tapasztaltál, annak vége igen nagy szívás lehet. Ezért nagyon fontos szabály, hogy egy blokkban lokális változót SOHA nem használunk fel azelőtt a blokk lefutásán belül, hogy annak értéket adtunk volna!
Új hozzászólás Aktív témák
- Még tavasszal befut az Xbox mód a Windows 11-hez
- Házimozi belépő szinten
- Formula-1
- Samsung kuponkunyeráló
- Milyen okostelefont vegyek?
- exHWSW - Értünk mindenhez IS
- Milyen autót vegyek?
- Allegro vélemények - tapasztalatok
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Kész rémálom lesz Linuxot használni jövőre az USA egyes államaiban
- További aktív témák...
- Apple iPad mini 7 2024 128GB MXN63 SpaceGray
- Samsung 850 EVO 256GB SSD eladó
- Samsung SyncMaster EX2220 Monitor kisfogyasztású Full HD LED monitor
- Bivaly erős 10 magos Dell Latitude 5430 (12.gen Core I7 32Gb DDR4 512Gb SSD) laptopom eladó!
- Apple Watch Ultra 2 Natur Titanium, Alpine Loop szíj, még 9 hó gari Emag vásárlás
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

