【发布时间】:2011-03-20 17:14:27
【问题描述】:
问题很简单——比如说,我有一个函数,它接收数组作为它的参数
void calc(double[] data)
如何将这些数据“拆分”在两个子数组中并传递给这样的子函数
calc_sub(data(0, length/2));
cals_sub(data(length /2, length /2));
我希望你明白了——我会用 C++ 写这个
void calc(double * data, int len)
{
calc_sub(data, len / 2); //this one modifies data!!
calc_sub(data + len / 2, len / 2); //this one modifies data too!!
}
如何在没有不必要的内存复制的情况下在 C# 中做同样的事情? 我在这里需要 2 个内存副本。 1)从数据到拆分数据 2) calc_sub 3)从拆分数据返回数据!这是对时间和内存的巨大浪费!
【问题讨论】: