2012-07-03 80 views
1

我越來越熟悉C++/cli。我正在寫一個名爲Locate的函數,它叫做Locator。輸入字符串字典的函數。C++/cli函數參數中的字典

Dictionary<String^, array<Byte>^>^ Locate(Dictionary<String^, String^>^ imgParms) 

我想通過這樣來調用它的主要功能:

Locator r; 

Dictionary<String^,String^> myDictionary = 
       gcnew Dictionary<String^,String^>(); 

r.Locate(myDictionary); 

但我得到這個錯誤

error C3073: 'System::Collections::Generic::Dictionary<TKey,TValue>' : ref class does   
not have a user-defined copy constructor with 
      [ 
       TKey=System::String ^, 
       TValue=System::String^
      ] 

任何幫助,將不勝感激。

回答

3
Dictionary<String^,String^> myDictionary = 
       gcnew Dictionary<String^,String^>(); 

應該

Dictionary<String^,String^>^ myDictionary = 
       gcnew Dictionary<String^,String^>(); 

^符號可以被看作像*一個類型修飾符做gcnew將返回你x^鍵入X

+0

非常感謝它的工作。如果我想將賦值的返回值賦給字典,我能做到嗎? Dictionary ^myResult = gcnew Dictionary (); myResult = r.Locate(myDictionary); – fmvpsenior

+0

我的意思是Dictionary ^>^myResult = gcnew Dictionary ^>(); – fmvpsenior