0

好的,这就去。我正在为directx 创建包装器并使用类型。我知道我很可怕,但请指出我正确的方向。

Platform::Array<short>^ Font::GetGlyphIndices(const Platform::Array<int>^ codePoints)
{
font->GetGlyphIndices(const UINT32 *codePoints, UINT32 count, UINT16 *indices);

Platform::Array<short>^ in; //should return indices

return in;
}

如何转换类型?VS 抛出错误为"signature of public member contains native type 'int []'". 所以,更新代码。

4

1 回答 1

0

您正在使用托管 C++ 和本机 C++。所以最好的办法是分配 UINT32 的本机指针(数组),从本机函数获取数据并运行循环以将值获取到托管数组(in)中。然后返回。您不能也不应该混合托管和非托管内存。所以,非常赞成为数组写转换!

于 2013-01-23T16:35:04.917 回答