英語で読む

次の方法で共有


コンパイラ エラー CS0636

FieldOffset 属性は、StructLayout(LayoutKind.Explicit) でマークされた型のメンバーでのみ使用できます

FieldOffset 属性でマークされたメンバーが含まれている場合は、構造体の宣言で、 StructLayout(LayoutKind.Explicit) 属性を使用する必要があります。 詳細については、「 FieldOffset」を参照してください。

次の例では CS0636 が生成されます。

// 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 ()  
   {  
   }  
}