Прочитать на английском

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


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

"конструктор1_имя" является "конструктор1", но используется как "конструктор2"

Компилятор обнаружил ситуацию, когда конструктор используется неправильным образом или в конструкторе выполняется попытка использовать запрещенную операцию. Распространенные примеры:

  • попытка создать экземпляр пространства имен (вместо класса);

  • попытка вызвать поле (вместо метода);

  • попытка использовать тип в качестве переменной;

  • попытка использовать внешний псевдоним в качестве типа.

Чтобы устранить эту ошибку, убедитесь, что операция, которую вы выполняете, допустима для данного типа.

Пример

Следующий пример приводит к возникновению ошибки CS0118.

// CS0118.cs  
// compile with: /target:library  
namespace MyNamespace  
{  
   class MyClass  
   {  
      // MyNamespace not a class  
      MyNamespace ix = new MyNamespace ();   // CS0118  
   }  
}