Tartalomjegyzék:
- Meghatározás - Mit jelent a nem ellenőrzött operátor?
- A Techopedia magyarázza a nem ellenőrzött operátort
Meghatározás - Mit jelent a nem ellenőrzött operátor?
A C #-ben egy nem ellenőrzött operátor az operátor, amely letiltja a túlcsordulás ellenőrzését a kifejezések és a konverziók kiértékelése során.
Miközben integrált típusú aritmetikai műveleteket végeznek numerikus adattípusokat tartalmazó kifejezések felhasználásával, túlcsordulási kivételt eredményezhet, ha a művelet eredménye túl nagy ahhoz, hogy megjelenjen abban a számban, amelyet egy adott bitszámmal osztanak meg a típusa alapján. Azokban az esetekben, amikor a túlcsordulás a művelet elfogadható eredménye, meg kell szüntetni a kivételt és folytatni kell a programot. A nem ellenőrzött operátort az ilyen forgatókönyvekben használják egy ellenőrizetlen környezet beállításával, amelyben az aritmetikai túlcsordulást az eredmény csonkításával figyelmen kívül hagyják.
A C / C ++ -al ellentétben, amely figyelmen kívül hagyja a túlcsordulás lehetőségét, a C # lehetőséget nyújt arra, hogy kezelje vagy figyelmen kívül hagyja a túlcsordulást ellenőrzött és nem ellenőrzött operátorok biztosításával. A nem ellenőrzött operátort gyakran használják egy projekt szakaszában, amelyet ellenőrzött kontextusban állítanak össze. Néhány algoritmus, amelyben a nem ellenőrzött operátort felhasználni lehet, tartalmaz ellenőrző összegeket, titkosítási logikát és véletlenszám-generációt.
A Techopedia magyarázza a nem ellenőrzött operátort
Egy nem ellenőrzött operátort használunk egy kifejezésnél a "nem jelölt" kulcsszóval és egy kódblokkban szereplő állításként. Olyan végrehajtási kontextust állít be, amelyben az eredmény legfontosabb bitjeit egész számú túlcsordulás esetén eldobják, miközben a végrehajtás folytatódik. A nem ellenőrzött kontextus a "nem ellenőrzött" utasításban szereplő utasításokra vonatkozik, és nem a beágyazott függvényhívásokra.
Például, ha az adattípus két nagy egész számának szorzata rövidítés használatát igényli valamilyen célra, anélkül, hogy szükség lenne a túlcsordulás előfordulásának ellenőrzésére, akkor nem ellenőrzött operátor használható.
Általában az állandó kifejezéseket tartalmazó kifejezés csak fordítási idő alatt ellenőrizhető túlcsordulás szempontjából. Egy nem ellenőrzött operátor felhasználható az ilyen kifejezések túlcsordulásának ellenőrzésére, valamint olyan kifejezésekre is, amelyek alapértelmezés szerint nem állandó kifejezéseket tartalmaznak, mind futási, mind fordítási időnél.
A nem ellenőrzött operátort nem lehet túlterhelni.
Mivel a nem ellenőrzött operátor használata teljesítménybüntetéssel jár, csak akkor szabad használni, ha a túlcsordulás nem okoz problémát.
Ezt a meghatározást a C # összefüggésben írták
