列表而不是数组

时间:2012-07-17 19:13:41

标签: c++-cli

我目前有一个函数,输出myResult是一个byte数组的字典。我想将它转换为字节列表的字典,因为对于每个条目,我可以存储多于1个字节的数组。用列表替换数组的格式是什么?如何将每个数组添加到列表中。目前的格式如下:

int img_sz = img0->width * img0->height * img0->nChannels;

array <Byte>^ hh = gcnew array<Byte> (img_sz);

Marshal::Copy( (IntPtr)img->imageData, hh, 0, img_sz );

Dictionary<String^,array< Byte >^>^ myResult = gcnew Dictionary<String^,array< Byte >^>(); 

myResult["OVERVIEW"]=hh;

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

我不完全确定你要去哪一个,所以我会回答它们。

Dictionary<String^, List<Byte>^>^

如果您希望以Dictionary<String^, List<Byte>^>^结尾,只需拨打List<T>的{​​{1}} constructor,然后将其添加到字典中。< / p>

IEnumerable<T>

Dictionary<String^,List<Byte>^>^ myResult = gcnew Dictionary<String^,List<Byte>^>(); myResult["OVERVIEW"] = gcnew List<Byte>(hh);

如果您希望以Dictionary<String^, List<array<Byte>^>^>^结尾,则需要检查字典以查看它是否为该键的列表,如果没有,则添加列表,然后将新数组添加到名单。使用要存储每个数组的列表的各种数组和名称来调用此方法。

Dictionary<String^, List<array<Byte>^>^>^