2020
12-29
12-29
关于C#调用C++dll传指针释放内存问题
一、传入dll前,在C#中申请内存空间c#里面的指针即IntPtr申请如下:IntPtrSrcImgData=Marshal.AllocHGlobal(length);这种需要提前知道空间大小,否则无法确定空间大小,会导致dll内部处理时越界报错。c#里面申请空间了,那么c++里面一般就是在这些空间里面操作了,一般不会重新分配内存,那么就不需要加引用了。c++:uchar*SrcImgc#导入dll函数时申明:IntPtrSrcImg那么内存释放自然也是由c#来进行。Marshal.FreeHGlobal(SrcI...
继续阅读 >