Leer en inglés

Compartir a través de


Error del compilador CS0636

El atributo FieldOffset solo se puede colocar en miembros de tipos marcados con StructLayout(LayoutKind.Explicit)

Debe usar el atributo StructLayout (LayoutKind.Explicit) en la declaración struct, si contiene algún miembro marcado con el atributo FieldOffset . Para obtener más información, vea FieldOffset.

El ejemplo siguiente genera la advertencia CS0636:

C#
// CS0636.cs  
using System;  
using System.Runtime.InteropServices;  
  
// To resolve the error, uncomment the following line:  
// [StructLayout(LayoutKind.Explicit)]  
struct Worksheet  
{  
   [FieldOffset(4)]public int i;   // CS0636
}  
  
public class MainClass  
{  
   public static void Main ()  
   {  
   }  
}