Поделиться через


Ошибка компилятора CS0220

Обновлен: Ноябрь 2007

Сообщение об ошибке

Переполнение при выполнении операции во время компиляции в режиме с проверкой
The operation overflows at compile time in checked mode

Оператором checked, заданным по умолчанию, обнаружена операция, которая привела к потере данных. Для устранения этой ошибки исправьте присвоение или используйте оператор unchecked. Дополнительные сведения см. в разделе Checked и Unchecked (Справочник по C#).

В следующем примере возникает ошибка CS0220.

// CS0220.cs
using System;

class TestClass
{
   const int x = 1000000;
   const int y = 1000000;

   public int MethodCh()
   {
      int z = (x * y);   // CS0220
      return z;
   }

   public int MethodUnCh()
   {
      unchecked
      {
         int z = (x * y);
         return z;
      }
   }

   public static void Main()
   {
      TestClass myObject = new TestClass();
      Console.WriteLine("Checked  : {0}", myObject.MethodCh());
      Console.WriteLine("Unchecked: {0}", myObject.MethodUnCh());
   }
}