从C ++ / CLI将本机数组作为托管数组传递

时间:2016-07-04 14:24:00

标签: c++-cli interop

我有控制相机的第三方库。 它是用C ++编写的,我想从C#中使用它。 lib将图像抓取为byte *。 有一些方法可以将其传递给C#。

  1. 使用unsafe语句将字节*直接传递给C#。在这种情况下,C#代码无法像裁剪操作那样更改图像大小。
  2. 使用Marshal.Copy创建托管字节数组并传递它。这为C#提供了灵活性,但是存在开销和额外的内存使用。
  3. 所以,我的问题是:
    有没有办法将字节*转换为托管字节[]而无需复制?因为带有固定语句的托管字节数组是" blittable",我认为可以有#34;反向"方法

    感谢任何帮助,谢谢。

0 个答案:

没有答案