0

我正在尝试用 c++(在 CLR/类库下)编写一个 dll,以作为 vb.net 项目中的引用添加。我解释了我遇到的问题:当我在不使用数组或指针的情况下编写通用函数时,一旦我构建了我的 c++ 项目并将生成的 dll 作为参考添加到我的 vb.net 项目中,我就可以可视化并使用这个函数。但是,当我尝试编写一个必须使用多维数组的函数时,在 vb 的“对象查看器”中显示的方法中,我的新函数不存在。

有什么我应该知道的特别是使用多维数组作为函数中的参数,当我添加作为引用我的 dll 时可见?或者也许我必须遵循完全不同的方式?

请让我知道如何解决这个问题。

谢谢你能给我的任何帮助!!

4

1 回答 1

0

一种解决方案,使用 C++/CLI DLL 作为中介。C++/CLI 可以处理本机类型和托管类型。因此,您可以先将 natvie 多维数组作为参数传递给 C++/CLI,然后在 C++/CLI Dll 中创建托管多维数组,并将本机多维数组的值分配给托管多维数组。最后,这个托管的可以传递给 VB.NET。

我曾经使用这个解决方案将多维数组从C传递到C#,当时我试图找到更好的解决方案,但我没有。我希望现在会有。

于 2012-11-21T02:10:15.740 回答