C# Language
Zaznaczone i niezaznaczone
Szukaj…
Składnia
- sprawdzone (a + b) // sprawdzone wyrażenie
- niezaznaczone (a + b) // niezaznaczone wyrażenie
- zaznaczone {c = a + b; c + = 5; } // zaznaczony blok
- niezaznaczone {c = a + b; c + = 5; } // niezaznaczony blok
Zaznaczone i niezaznaczone
Instrukcje C # są wykonywane w kontekście zaznaczonym lub niezaznaczonym. W sprawdzonym kontekście przepełnienie arytmetyczne powoduje wyjątek. W niezaznaczonym kontekście przepełnienie arytmetyczne jest ignorowane, a wynik jest obcinany.
short m = 32767;
short n = 32767;
int result1 = checked((short)(m + n)); //will throw an OverflowException
int result2 = unchecked((short)(m + n)); // will return -2
Jeśli żaden z nich nie zostanie określony, domyślny kontekst będzie zależał od innych czynników, takich jak opcje kompilatora.
Zaznaczone i niezaznaczone jako zakres
Słowa kluczowe mogą również tworzyć zakresy w celu (od) sprawdzania wielu operacji.
short m = 32767;
short n = 32767;
checked
{
int result1 = (short)(m + n); //will throw an OverflowException
}
unchecked
{
int result2 = (short)(m + n); // will return -2
}
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow