- Külföldi prepaid SIM-ek itthon
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Szerény teleppel érkezik a Galaxy A37/A57
- Xiaomi 17 - még mindig tart
- Samsung Galaxy A55 - új év, régi stratégia
- Honor 200 - kétszázért pont jó lenne
- Samsung Galaxy Watch7 - kötelező kör
- Motorola Edge 50 Fusion - jó fogás
- Xiaomi 17 Ultra - jó az optikája
- Honor Magic6 Pro - kör közepén számok
-
Mobilarena

Új hozzászólás Aktív témák
-
Silεncε
őstag
válasz
I02S3F
#13643
üzenetére
Alapvetően bárhol használhatsz sima változót konstans helyett, maga a konstans inkább arra ad védelmet, hogy az adott változó értéke nem lehet módosítható. Konstanst szoktunk használni például, ha valami előre tudott értéket akarunk a kódba "beégetni", amiket több helyen is eltárolunk. Nálunk például az egyik projektben meg kellett adni több helyen, hogy a munkaidő mikor kezdődik, ezt evidens volt, hogy konstansnak tárolom el, így máshol is tudom használni és elég csak 1 helyen átírni, ha véletlenül változik.
Az, hogy melyik nyelv hogyan kezeli a konstansokat, totál változó, például ott a C++, ahol van a "rendes konstans" meg vannak a #define-ok, amik már el sem jutnak a fordításig, mert a preprocessor lecseréli őket a #define-ban megadott értékre.
Egy szó mint száz: simán használhatsz bárhol változót konstans helyett, lényegében ugyanazt a hatást fogod elérni, viszont a konstans többletvédelmet ad, mivel miután definiáltad, nem tudod később az értékét változtatni (szóval ha mondjuk véletlenül bekeveredik egy értékadás bal oldalára, a fordító/interpreter szólni fog, nem fog megváltozni az értéke, ami miatt aztán debugolhatnál napestig)
-
válasz
I02S3F
#13643
üzenetére
Őszintén nem tudom. Igazából szerintem annyit fognak írni mindenhova, hogy ha valaminek nem akarod, hogy futás közben változzon az értéke, az legyen konstans, a többi meg ne.
Megpróbálok írni egy kis segítséget, hátha sikerül, de nem magyarázok a legjobban(meg kicsit este van már), úgyhogy ha nem megy át, akkor bocs.
Kezdőnek érthető példa mondjuk a logolás lehet. Ugye fut szépen a programod, és akkor irogatsz dolgokat a konzolra (vagy akárhova). Namost, egyszerű példának mondjuk csinálhatsz egy log osztályt, aminek van egy olyan függvénye, hogy debuglog(message), amivel olyan dolgokat írsz ki, amiket normál futás közben nem, mert nem kell, csak a fejlesztést segíti. És akkor csinálsz egy konstanst, hogy debuglog, ami lesz alapból mondjuk false, aztán ha meg kell, átírod true-ra, kigyomlálod a fost és utána újra false.Tegyük hozzá, hogy ez azért nagyon rossz példa, mert amúgy nem így csináljuk, ha normális logolást szeretnénk, hanem van a programnak loglevelje, amit indításkor paraméterben, vagy ini fileban adunk meg és annak megfelelően logol, ha meg nincs megadva semmi, akkor működik egy default értékkel, de tanulásra meg gyakorlásra eleinte tökéletes. Ez a log osztály akár mehet is azonnal szépen külön fileba, és akkor már van is egy bővíthető, újrahasználható osztályunk, jár a keksz.
Kollégák: ha valakinek van jobb ötlete egyszerű példára, hogy az én fos példám el lehessen felejteni, jöhet.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Külföldi prepaid SIM-ek itthon
- Milyen TV-t vegyek?
- Gyúrósok ide!
- Mikrotik routerek
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Philips LCD és LED TV-k
- Egyre csábítóbbak ezek az ASUS ExpertCenter mini PC-k
- Horgász topik
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Kerékpárosok, bringások ide!
- További aktív témák...
- Zenbook UX3404VA 14.5" 3K OLED i5-13500H 16GB 512GB NVMe magyar vbill gar
- Apple MacBook Pro 14" (2021) M1 Pro - 32GB/1TB / 91% akku - Újszerű - 12 hónap garancia
- Lenovo Thinkpad x13 (i5 10th, 8 GB, 240 SSD) AkciÓÓ!
- Corsair Vengeance RGB 64GB (2x32) DDR5 6000Mhz for AMD // Számla // Garancia//
- HP Eltebook x360 1030 G2 tablet+laptop (i5 7th, 8 GB, 128 GB SSD FHD) AkciÓÓ!
- Sima Vs.Windows Logitech Mx keys s plus és hagyományos Mx keys magyar bemutatása. Új videó linkkel
- Samsung Galaxy S20 Ultra / 12/128GB / Kártyafüggetlen / 12Hó Garancia
- 1000 W HP DPS-800GB-A szerver tápegység
- AKCIÓ! Gigabyte B450M R5 5 2600 8GB DDR4 512GB SSD GTX 1650 4GB ZALMAN T3 Plus Deepcool 400W
- HP Zbook Fury 17 G8 - üzletből, garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest




