我有一个C#结构体声明如下:
public struct AdvertisementData {
public byte SomeId;
[MarshalAs(UnmanagedType.LPArray , SizeConst = 12)]
public byte[] AnArray;
}
以下是其C++版本:
struct AdvertisementData {
uint8_t SomeId;
uint8_t AnArray[12];
};
当我试图将上述结构体在C++中栈分配的实例的引用发送到C#时,我收到以下错误信息:“无法将类型为Byte []的结构字段作为LPArray编组。” 您有什么想法是我做错了什么?