Hirdetés
- Poco F8 Ultra – forrónaci
- Megtartotta Európában a 7500 mAh-t az Oppo
- Yettel topik
- A piac legerősebb kameráját ígéri a Xiaomi 17 Ultra
- Fotók, videók mobillal
- Itthon is elérhető a OnePlus 11 és a Buds Pro 2
- Samsung Galaxy A54 - türelemjáték
- iPhone topik
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy Watch7 - kötelező kör
Új hozzászólás Aktív témák
-
válasz
Aethelstone
#6510
üzenetére
Itt szepen es erthetoen leirjak (az elso valaszban).
De akkor roviden en is leirom -- egy klasszikus pelda a megoldasra: Option tipus.
Ha van pl. egy fuggvenyed, ami Integer ertekkel ter vissza, akkor a fordito garantalja, hogy az Integer lesz, es nem null. Ha egy masik, alapvetoen Integert visszaado fuggvenyed nem mindig tud visszaterni Integerrel, mert pl. kivetelt dobhat, vagy ilyesmi, es nincs mit visszaadni, akkor a fuggvenyed visszateresi erteke legyen egy Option ertek, amit viszont nem tudsz Integerkent hasznalni, csak ugy, ha mindenkepp ellenorzod, hogy van-e erteke vagy sem.
Option ret = enFuggvenyem();
switch ret {
case None: print "Nincs visszateresi ertek"
case Integer(i): print "Az Integer ertek: " + i.toString()
}Sokfele megoldas van, a lenyege az, hogy nem kerulhetsz olyan szituacioba, ahol elfelejted ellenorizni, hogy valami null-e vagy sem, mert a compiler garantalja, hogy vagy tuti van ervenyes ertek, vagy leellenorizted.
Ahogy Hoare is mondja (akit gondolom nem kell bemutatni):
I call it my billion-dollar mistake. It was the invention of the null reference in 1965. At that time, I was designing the first comprehensive type system for references in an object oriented language (ALGOL W). My goal was to ensure that all use of references should be absolutely safe, with checking performed automatically by the compiler. But I couldn't resist the temptation to put in a null reference, simply because it was so easy to implement.A lenyeg, hogy a nullreferencia nem egy szukseges rossz, hanem igazabol tok felesleges, amit a korai nyelvekbe raktak bele, hogy kicsit egyszerubb legyen megirni a compilert, es itt ragadt velunk. Csomo nyelvben (akar JVM alapu nyelvekben is) megoldottak, hogy ne legyen.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- RYZEN 7 5800X + hűtött VRM-es A520 alaplap + 32GB hűtőbordás DDR4 kit! GAR/SZÁMLA (a Te nevedre)!
- ASUS Maximus IV Extreme P67
- Kraftwerk - The Catalogue - 2009 - CD díszdoboz
- 4X8gb ADATA DDR4-2666mhz memoria csak egyben!
- HP Omen - 15,6" FullHD IPS 144Hz, Ryzen 7-5800H, 32GB, 1Tb SSD, nVidia GeForce RTX 3070 8GB
- Bontatlan! Mega AKCIÓ! 2028.12.11 Gari! Apple Macbook Air 15.3 M4! 10C/16GB/256GB
- BESZÁMÍTÁS! Lenovo Legion Go 512GB SSD kézikonzol garanciával hibátlan működéssel
- Prémium PC házak akár 20-40% kedvezménnyel eladók garanciával, számlával! Upd. 12.22
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 16/32/64GB RAM RX 9060XT 16GB GAMER PC termékbeszámítással
- Apple iPhone 13 Mini 128GB,Újszerű,Adatkabel,12 hónap garanciával
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


