Вы можете использовать следующие шаги, чтобы включить проверку арифметического переполнения / переполнения в Visual Studio:
- Щелкните правой кнопкой мыши свой проект в обозревателе решений и выберите Свойства .
- На вкладке «Сборка» нажмите кнопку «Дополнительно». (Это снизу)
- Установите флажок «Проверка на арифметическое переполнение / переполнение».
Это вызовет System.OverflowException
, когда происходит переполнение, а не обычная операция по изменению значения до минимального значения.
Без включенного арифметического переполнения / переполнения:
int test = int.MaxValue;
test++;
//Test should now be equal to -2,147,483,648 (int.MinValue)
При включенном арифметическом переполнении / переполнении:
int test = int.MaxValue;
test++;
//System.OverflowException thrown
Используя проверенный блок:
checked
{
int test = int.MaxValue;
test++;
//System.OverflowException thrown
}
Документация для проверенного доступна здесь . ( Спасибо Саше за напоминание об этом. )