DLL我想从我的C#代码中调用这个C++函数:C#调用C++使用char **参数
void GetArrayOfNames(char** names, int nbOfNames);
要调用它在C++中,我只是定义的char *数组:
char* aNames[20];
和环型分配每个名字:
for(int i-0; i<20; i++)
{
aNames[i] = new char[50];
}
然后拨打电话:
GetArrayOfNames(aNames, 20);
在我的C#代码,我有:
[DllImport("MyDLL.dll")]
unsafe static extern void GetArrayOfNames(char** ppNames, int nbOfNames);
现在,我该怎么办了内存的分配和调用GetArrayOfNames?此外,任何不必将我的函数声明为“不安全”的方式?