带字节数组参数的字典

时间:2012-07-09 23:10:32

标签: c++-cli

我有一本字典myResult:

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

我宣布

array <Byte^>^ a;

然后我添加了一个字典的键

myResult->Add("OVERVIEW",a);

我收到错误

error C2664: 'System::Collections::Generic::Dictionary<TKey,TValue>::Add' : 
cannot       convert parameter 2 from 'cli::array<Type> ^' to 'cli::array<Type> ^'
1>          with
1>          [
1>              TKey=System::String ^,
1>              TValue=cli::array<unsigned char> ^
1>          ]
1>          and
1>          [
1>              Type=System::Byte ^
1>          ]
1>          and
1>          [
1>              Type=unsigned char
1>          ]

感谢任何帮助,因为我对c ++ / cli不太熟悉;

1 个答案:

答案 0 :(得分:0)

Dictionary<String^,array< Byte >^>^
                          ^ Uppercase B

array <byte^>^ a;
       ^ Lowercase B

Byte^byte^命名不同的类型(实际上,我对后者编译感到有些惊讶,尽管我不是C ++ / CLI专家)。前者是System::Byte的跟踪句柄。后者是unsigned char(显然编译器正在放弃,我认为它是这样做的,因为它不是CLI类型,因此不适合戴帽子。)