110,536
社区成员
发帖
与我相关
我的任务
分享
[DllImport(dll文件名)]
static extern int func(int count, double[] valList, double[] result);
double[] valList = new double[]{1,2,3};
double[] result = new double[valList.Length];
int x = func(valList.Length, valList, result);
CLILib.Class1 cls = new Class1();
double[] d1 = {0.1, 0.2, 0.3, 0.4};
double[] d2 = new double[d1.Length];
cls.func(d1, d2);
CLI和C++的代码:
public ref class Class1
{
public:
int func(array<double>^ valList, array<double>^ result)
{
int length = valList->Length;
pin_ptr<double> pvalList = &valList[0];
pin_ptr<double> pResult = &result[0];
return internalFunc(length, pvalList, pResult);
}
private :
int internalFunc(int count, double* pvalList, double* pResult)
{
for(int i = 0; i< count; ++i)
{
pResult[i] = pvalList[i];
}
return 0;
}
};