Как аннотировать C# структурное поле, чтобы маршалировать как указатель или вкладывать в PInvoke? - PullRequest
2 голосов
/ 10 апреля 2020

В C ++ есть следующие структуры

extern "C" {
    struct A_C {
        UINT32 number;
    }

    struct B_C {
        A_C nested;
        A_C* pointer;
    }
}

Какая правильная аннотация атрибута следующих C# структур

struct ACs {
    UInt32 number;
}

struct BCs {
    ACs nested;
    ACs pointer;
}

, так что BCs.nested будет отображено на B_C.nested и BCs.pointer будет отображаться в B_C.pointer?

Этого можно достичь путем реализации ICustomMarshaler, но есть ли решение без дополнительного процедурного кода?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...