关于C#调用C++ DLL库传入数组、引用的记录。
1、复杂类型需要C#在定义时保持和C++中的源类型一模一样,特别是成员的顺序,一定要一致。2、复杂类型中的数组在长度固定时,使用[MarshalAs(UnmanagedType.ByValArray, SizeConst=length)]如:[MarshalAs(UnmanagedType.ByValArray, SizeConst = 65535)]public int[] VectorData = new int[65535];,长度不固定时,该成员需要定义为IntPtr类型的通用指针,如:
原创
2020-08-06 15:58:24 ·
3237 阅读 ·
0 评论