C#调用C++DLL数组,结构体传递
本文例子是C#静态调用C++DLL中函数的一维数组,通过结构体传递的方式。已验证。
二维数组也可以通过结构体传递的方式传递,方法二维数组先转换成一维数组,然后按照下述。这里不多做表述,有需要请参看下一篇文章。(还没顾得上写)
照猫画虎。
例子实现功能:Sn=a+bn(n>=0)
即Sn[0]=S0=a+b0,
Sn[1]=S1=a+b1,
Sn[2]=S2=a+b2
…
C++DLL
.cpp中
void _cdecl addTest(GetSn &&sn,const double a, const double b, const int n) {
double *Sn = new double[n + 1]();//创建一个动态一维数组Sn并初始化,用来接收所有结果
Sn[0] = a;//当n=0时,Sn值
for (int i = 1; i