Блок неконтролируемых не работает с Biginteger? ⇐ C#

Место общения программистов C#
Anonymous
Блок неконтролируемых не работает с Biginteger?

Сообщение Anonymous »

только что заметил, что неконтролируемый контекст не работает при работе с Biginteger, например: < /p>

unchecked
{
// no exception, long1 assigned to -1 as expected
var long1 = (long)ulong.Parse(ulong.MaxValue.ToString());
}

unchecked
{
var bigInt = BigInteger.Parse(ulong.MaxValue.ToString());

// throws overflow exception
var long2 = (long)bigInt;
}
< /code>

Есть идеи, почему это так? Есть ли что -то особенное с тем, как большие целые числа преобразуются в другие примитивные целочисленные типы? < /P>

Спасибо, < /p>

Подробнее здесь: https://stackoverflow.com/questions/721 ... biginteger

Вернуться в «C#»