2013-10-16 24 views
1

我有一个C++的Dll,我无法修改,我需要将它用于C#代码。所以我创建了一个C++/CLI类作为我原来的C++类的包装器。如何在C++和C#之间传递一个Int **

有一个int **参数的方法,我不知道如何将它传递给C++/CLI代码,然后传递给C#代码。

这里是一个返回框架元件数量的本地C++方法的定义:

int Precursor::GetFrame(int **frame, int id) 

你能帮我吗? 谢谢

回答

1

当导入C++ DLL时,你需要编组指针int **frame作为ref IntPtr ppFrame。您的CLI功能将使用IntPtr% frame

+0

我已经找到了另一种方式,其实,我用同样的定义我的C++/CLI方法和C#的方法我创建了一个临时INT *我传递给方法然后我将每个值复制到由ref传递的int []。 – diditexas