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

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


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

Поля буферов фиксированного размера могут быть только членами структур.

Эта ошибка возникает, если поле буфера фиксированного размера используется в class, а не в struct. Чтобы устранить эту ошибку, измените class на struct или объявите это поле как обычный массив.

Пример

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

// CS1642.cs  
// compile with: /unsafe /target:library  
unsafe class C  
{  
   fixed int a[10];   // CS1642  
}  
  
unsafe struct D  
{  
    fixed int a[10];  
}  
  
unsafe class E  
{  
   public int[] a = null;  
}