1

Afterthought を使用して、コンパイル時にクラスに属性を追加できるかどうかを知りたいです。PostSharp でこれが可能であることはわかっていますが、Afterthought では、プロパティの属性の修正しか確認できません。このようなことをしたいと思います。

[AddStructLayout]
class Foo
{
    float A;
    float B;
}

生成する必要があります

[Struct;StructLayout(Explicit)]
class Foo
{
    [FieldOffset(0)]
    float A;
    [FieldOffset(16)]
    float B;
}

私の使用例は、クラスに StructLayout 属性を追加し、クラスのフィールドに FieldOffset 属性を追加して、特定の方法でメモリ レイアウトを適用することです。正確なレイアウト ルールはアスペクトによって決まります。

ありがとうヨハン

4

0 に答える 0