C# 调用C++动态库注意事项
C# 调用C++动态库注意事项
最近项目上需要在C#中调用C++,期间遇到不少坑,总结如下:
1.in const char* 对应C#中string 或 IntPtr
2.out const char* 对应C#中的StringBuilder
3.inout const char* 对应C#中的StringBuilder
4.const char *作为返回值类型,对应C#中IntPtr
5.char** 对应C#中ref System.IntPtr
6.in const char* 有时候需要传入二进制数组数据,即对应byte[]
7.读取文件可以通过FileStream和StreamReader,区别是FileStream为二进制流,StreamReader为字符串流