gpt4 book ai didi

c++ - 从托管 C++ 访问 native C++ 数据

转载 作者:太空狗 更新时间:2023-10-29 20:48:58 24 4
gpt4 key购买 nike

我有一个 native C++ 库,它使用大型静态缓冲区(它从设备获取数据)。

假设这个缓冲区是这样定义的:

unsigned char LargeBuffer[1000000];

现在我想将这个缓冲区的一部分暴露给托管 C++,例如当库将 1000 字节的新数据存储在 LargeBuffer[5000] 时,我想对托管 C++ 代码执行回调,将指针传递给 LargeBuffer[5000]以便托管 C++ 可以访问那里的 1000 字节数据(如果可能,直接访问,即不复制数据,以实现最佳性能)。

让托管 C++ 代码访问此 native 数组中的数据的最佳方法是什么?

最佳答案

托管 C++ 可以很好地访问非托管内存。您可以只传入指针并在托管 C++ 中使用它。

现在,如果您想将该数据传递给其他 .NET 语言,则需要将该数据复制到托管内存结构或使用 C# 中的不安全代码

关于c++ - 从托管 C++ 访问 native C++ 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1975992/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com