Почему компилятор C# не жалуется на Overflow из-за этого очевидного «плохого» приведения?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Почему компилятор C# не жалуется на Overflow из-за этого очевидного «плохого» приведения?

Сообщение Anonymous »

Я не могу понять, почему компилируется приведенный ниже код.

Код: Выделить всё

public void Overflow()
{
Int16 s = 32767;
s = (Int16)  (s + 1);
}
Во время компиляции очевидно, что (s+1) больше не является Int16, поскольку мы знаем значение s.
И CLR позволяет выполнить приведение к:
  • К своему собственному типу
  • Или к любому из базовых типов (поскольку это безопасно)
Поскольку Int32 не является Int16, а Int16 не является базовым типом Int32.
Вопрос: Так почему же компилятор не дает сбоя при приведенном выше кастинге? Не могли бы вы объяснить это с точки зрения CLR и компилятора?

Подробнее здесь: https://stackoverflow.com/questions/955 ... bvious-bad
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Измените параметр overflow-visible на overflow-auto, если размер элемента больше области просмотра.
    Anonymous » » в форуме CSS
    0 Ответы
    34 Просмотры
    Последнее сообщение Anonymous
  • Overflow-y auto делает клип overflow-x невидимым
    Anonymous » » в форуме CSS
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous
  • Сборка Flutter не удалась на Android, но очевидного сообщения об ошибке нет
    Anonymous » » в форуме Android
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Сборка Flutter не удалась на Android, но очевидного сообщения об ошибке нет
    Anonymous » » в форуме Android
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Кнопка не имеет очевидного события Onclick
    Anonymous » » в форуме Html
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous

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