我有一个应用程序需要将数组从C#传递到C++ DLL。什么是最好的方法来做到这一点?我在互联网上做了一些搜索,发现我需要使用ref从C#传递数组。对于相同的代码:在C++ DLL从C#传递数组到C++的问题
status = IterateCL(ref input, ref output);
输入和输出数组是长度20的和对应的代码是
IterateCL(int *&inArray, int *&outArray)
这一次工作正常。但是,如果我第二次尝试从循环中调用C#中的函数,则C#中的输入数组将显示为一个元素的数组。为什么会发生这种情况,请帮助我如何从C#中迭代调用此函数。
谢谢, Rakesh。
@ILya:叶氏,它没有必要。 – abatishchev
@abatishchev为什么没有OutAttribute?我认为我们需要从C++返回一个值到C#,但InAttibute只是一个方向。 – ILya
据我了解OP函数声明,第一个参数只有In和第二个输入。虽然你可以指定两个参数的两个属性,但我想这将是过度使用 – abatishchev