2011-06-30 126 views

回答

5

只需创建一个托管数组,然后复制数据。简单。

array<Byte>^ MakeManagedArray(unsigned char* input, int len) 
{ 
    array<Byte>^ result = gcnew array<Byte>(len); 
    for(int i = 0; i < len; i++) 
    { 
     result[i] = input[i]; 
    } 
    return result; 
} 

是的,我敢肯定有使用Marshal类做副本给你,或者得到一个指针管理的阵列可以传递给memcpy一种方式,但这个工程,并没有按不需要对MSDN进行研究来验证它是否正确。

+0

同意。但使其数组 ^。 –

+0

D'oh。这就是我没有用编译器检查自己所得到的结果。 –

+0

这个类型的名称应该可以正常工作。 –

相关问题