利用c#中的c++
本文关键字:c++ 中的 利用 | 更新日期: 2023-09-27 18:28:15
我目前有一些c++代码,它处理"char***myArray"的速度比任何其他字符串比较方法都快。
我还将我的c++封装到DLL中,并从使用"DataTable"的c#GUI中调用函数。
我很好奇我是如何将"DataTable"数据交叉传递到"char***myArray"的。
接口.cs:
DataTable table
cppFunctions.cpp:
int CheckColumn(char ***myArray)
{
int k = 0;
double weight = 0;
for (int i = 1; i < RowCount; i++)
{
for (int j = i + 1; j < RowCount; j++)
{
weight = nGram(myArray[i][colNum], myArray[j][colNum], 3);
k++;
}
}
return k;
}
如果我在它之间传递int、double、string或任何简单值,效果都很好。
DataTable是.NET FCL的一部分,因此不能传递它。int、string等之所以有效,是因为它们是基元。您可以序列化/反序列化DataTable。
或者,您可以使用编组:http://msdn.microsoft.com/en-us/library/ms235266.aspx