C++ 多维数组转C#

来源:互联网 发布:mac os x 平台安装包 编辑:程序博客网 时间:2024/05/17 20:42

  C#调用C++Dll的多维数组采用降级使用,即将c++的多维数组,转成C#的一维数组处理

例如:

c++:

 typedef struct Test

{

  DWORD dsize;

 BYTE testArray[3][9];

}

C#:

public struct Test {

    public uint dsize;
    [System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst=3*9, ArraySubType=System.Runtime.InteropServices.UnmanagedType.I1)]
    public byte[] testArray;

    
}