gpt4 book ai didi

c# - C++/C# 数组移位等效项

转载 作者:行者123 更新时间:2023-11-30 03:06:25 27 4
gpt4 key购买 nike

我正在尝试将一些代码从 C++ 转换为 C#,但我不确定这两个语句是否等同。

C++(源代码):

float* df = new float[ length ]  // length is a previously initialized int
int coefIND = 0;
do
{
float* const df2 = df + coefIND;
// some element reassignments such as df2[1] = x[...] * y[...];
coefIND += 4;
}
while(coefINF < length);
delete[] df; // this occurs much later though

C#(翻译?):

float[] df = new float[ length ]
int coefIND = 0;
do
{
Array.Copy(df, 0, df, coefIND, length);
// some element reassignments such as df[1] = x[...] * y[...];
coefIND += 4;
}
while(coefIND < length)

感谢您的帮助,格雷格

最佳答案

您没有显示 df2 的 C# 定义,但最好的解决方案可能是将 coefIND 添加到代码主体中的每个索引,而不是复制到临时数组(然后再返回)。与 C++ 不同,安全的 C# 不允许您将指向元素的指针存储在数组中。

关于c# - C++/C# 数组移位等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6656755/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com