【发布时间】:2009-12-16 17:17:17
【问题描述】:
我正在尝试从一个字节数组创建一个托管数组。我目前有问题,但我想优化。这是我想要使用的一些代码:
private unsafe static double[] _Get_Doubles(byte[] _raw_data)
{
double[] ret;
fixed (byte* _pd = _raw_data)
{
double* _pret = (double*)_pd;
ret = (double[])*_pret; //FAILURE
}
}
请告诉我如何处理这些问题。
-亚伦
【问题讨论】:
-
通常在处理 Interop 时,Marshaller 是您的朋友,在 System.Runtime.InteropServices.Marshal 为您服务。我不知道使用数组具体需要什么。但是,您可以使用指针算法访问数组。也许这会提示您走向正确的方向。
-
@daGhost -- 我当然知道使用指针访问数组,但我必须研究编组托管数组。谢谢。
-
@Limited Thing(请不要再叫我daGhost):如果您可以使用指针访问数组元素,则可以将值复制到托管数组中。
标签: arrays pointers unmanaged managed