版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fx_odyssey/article/details/80239904
最近在给C++动态库包皮(知识是严肃的,莫笑),给C#的人用。扒了别人的博客,节选一点贴出来,忘了从哪里扒的了,后期慢慢补,先厚颜定为原创吧。声明,总结的部分不是原创。
总结:有C#及C++背景的人使用C++/CLI的必备知识:
1, C++/CLI里的new等于C++里的new, gcnew等于C#里的new
2, 原生指针用*表示,托管引用使用^表示
如: Stream^ stream = gcnew Stream();3, array<unsigned char>^ 等于 System.Byte[]
4, pin_ptr关键字能把托管引用转换为原生指针:
如: pin_ptr<BYTE> pBytes = & byteArray[0];
然后pBytes就可以当作原生的BYTE* 使用了
等代码执行完pBytes的有效范围,byteArray就会恢复可被GC处理的状态.
待续...