Obsah:
Definícia - Čo znamená kontrolovaný operátor?
Kontrolovaný operátor v C # je operátor, ktorý sa používa na vynútenie kontroly pretečenia pre aritmetické operácie a konverzie integrálneho typu v čase vykonávania. Kontrolované operátory sa používajú na zisťovanie chýb pri pretečení, ktoré sa môžu vyskytnúť v čase vykonávania aritmetických operácií, ktoré vedú k príliš veľkému počtu bitov pridelených údajovému typu používaného výsledku.
Aj keď existujú ďalšie možnosti kontroly pretečenia, ako sú prepínače kompilátora a konfigurácie prostredia vykonávania, kontrolované operátory poskytujú programový spôsob, ako to dosiahnuť, a zabezpečiť, aby sa riešilo pretečenie.
Techopedia vysvetľuje kontrolovaný operátor
Operácie, ktoré sú ovplyvnené kontrolou pretečenia pomocou kontrolovaných operátorov, sú tie, ktoré používajú preddefinované operátory vrátane operátorov "++", "-" a binárne operátory ako "+", "-", "/", "*" a explicitné číselné prevody z jedného integrálneho typu na druhý alebo z float / double na integrálny typ. Výstup operácie bude založený na operandoch. Pre výrazy, ktoré obsahujú iba konštantné hodnoty, môže kompilátor zistiť pretečenie a zobraziť ho ako chybu. Pri výrazoch pozostávajúcich z jednej alebo viacerých nekonštantných hodnôt sa overflow overí počas behu programu a zvýši sa výnimka (System.OverflowException).
Na rozdiel od kontroly pretečenia pre podpísanú celočíselnú aritmetiku v C / C ++, v ktorej je "definovaná implementácia", C # zlepšil spôsob kontroly kontroly pretečenia. Kontrolovaný operátor sa používa na vykonávanie príkazov C # v kontrolovanom kontexte tak, že pri výskyte aritmetického pretečenia sa vyvolá výnimka. Prinúti, že technológia Common Language Runtime (CLR) zvláda situácie s pretečením zásobníka pri vykonávaní operácií na celočíselných typoch, ktoré môžu viesť k hodnotám mimo hraníc dátového typu.
Kontrolovaný operátor ovplyvňuje kontext kontroly pretečenia pre operácie, ktoré sú textovo špecifikované v zátvorkách. Nemá vplyv na žiadnu funkciu vyvolanú vyhodnotením obsiahnutého výrazu.




