0

私は辞書myResultを持っています:

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

私は宣言しています

array <Byte^>^ a;

そして、辞書のキーに 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 に慣れていないので、助けていただければ幸いです。

4

1 に答える 1

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

array <byte^>^ a;
       ^ Lowercase B

Byte^さまざまな型にbyte^名前を付けます (実際、私は C++/CLI の専門家ではありませんが、後者がコンパイルされることに少し驚いています)。前者は への追跡ハンドルSystem::Byteです。後者はunsigned char(どうやらコンパイラが帽子を脱いでいるようです。これは CLI タイプではないため、帽子をかぶる資格がないためだと思います)。

于 2012-07-09T23:13:07.060 に答える